<!DOCTYPE html>
<html>
<head><meta charset="utf-8" />
<title>data-cleaning-listings</title>

<script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>

<style type="text/css" scoped>
    /*!
*
* Twitter Bootstrap
*
*/
/*!
 * Bootstrap v3.3.6 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden],
template {
  display: none;
}
a {
  background-color: transparent;
}
a:active,
a:hover {
  outline: 0;
}
abbr[title] {
  border-bottom: 1px dotted;
}
b,
strong {
  font-weight: bold;
}
dfn {
  font-style: italic;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
mark {
  background: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  margin: 1em 40px;
}
hr {
  box-sizing: content-box;
  height: 0;
}
pre {
  overflow: auto;
}
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}
button {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled],
html input[disabled] {
  cursor: default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
input {
  line-height: normal;
}
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  border: 0;
  padding: 0;
}
textarea {
  overflow: auto;
}
optgroup {
  font-weight: bold;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,
th {
  padding: 0;
}
/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .navbar {
    display: none;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important;
  }
}
@font-face {
  font-family: 'Glyphicons Halflings';
  src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot');
  src: url('../components/bootstrap/fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.woff') format('woff'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../components/bootstrap/fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg');
}
.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.glyphicon-asterisk:before {
  content: "\002a";
}
.glyphicon-plus:before {
  content: "\002b";
}
.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac";
}
.glyphicon-minus:before {
  content: "\2212";
}
.glyphicon-cloud:before {
  content: "\2601";
}
.glyphicon-envelope:before {
  content: "\2709";
}
.glyphicon-pencil:before {
  content: "\270f";
}
.glyphicon-glass:before {
  content: "\e001";
}
.glyphicon-music:before {
  content: "\e002";
}
.glyphicon-search:before {
  content: "\e003";
}
.glyphicon-heart:before {
  content: "\e005";
}
.glyphicon-star:before {
  content: "\e006";
}
.glyphicon-star-empty:before {
  content: "\e007";
}
.glyphicon-user:before {
  content: "\e008";
}
.glyphicon-film:before {
  content: "\e009";
}
.glyphicon-th-large:before {
  content: "\e010";
}
.glyphicon-th:before {
  content: "\e011";
}
.glyphicon-th-list:before {
  content: "\e012";
}
.glyphicon-ok:before {
  content: "\e013";
}
.glyphicon-remove:before {
  content: "\e014";
}
.glyphicon-zoom-in:before {
  content: "\e015";
}
.glyphicon-zoom-out:before {
  content: "\e016";
}
.glyphicon-off:before {
  content: "\e017";
}
.glyphicon-signal:before {
  content: "\e018";
}
.glyphicon-cog:before {
  content: "\e019";
}
.glyphicon-trash:before {
  content: "\e020";
}
.glyphicon-home:before {
  content: "\e021";
}
.glyphicon-file:before {
  content: "\e022";
}
.glyphicon-time:before {
  content: "\e023";
}
.glyphicon-road:before {
  content: "\e024";
}
.glyphicon-download-alt:before {
  content: "\e025";
}
.glyphicon-download:before {
  content: "\e026";
}
.glyphicon-upload:before {
  content: "\e027";
}
.glyphicon-inbox:before {
  content: "\e028";
}
.glyphicon-play-circle:before {
  content: "\e029";
}
.glyphicon-repeat:before {
  content: "\e030";
}
.glyphicon-refresh:before {
  content: "\e031";
}
.glyphicon-list-alt:before {
  content: "\e032";
}
.glyphicon-lock:before {
  content: "\e033";
}
.glyphicon-flag:before {
  content: "\e034";
}
.glyphicon-headphones:before {
  content: "\e035";
}
.glyphicon-volume-off:before {
  content: "\e036";
}
.glyphicon-volume-down:before {
  content: "\e037";
}
.glyphicon-volume-up:before {
  content: "\e038";
}
.glyphicon-qrcode:before {
  content: "\e039";
}
.glyphicon-barcode:before {
  content: "\e040";
}
.glyphicon-tag:before {
  content: "\e041";
}
.glyphicon-tags:before {
  content: "\e042";
}
.glyphicon-book:before {
  content: "\e043";
}
.glyphicon-bookmark:before {
  content: "\e044";
}
.glyphicon-print:before {
  content: "\e045";
}
.glyphicon-camera:before {
  content: "\e046";
}
.glyphicon-font:before {
  content: "\e047";
}
.glyphicon-bold:before {
  content: "\e048";
}
.glyphicon-italic:before {
  content: "\e049";
}
.glyphicon-text-height:before {
  content: "\e050";
}
.glyphicon-text-width:before {
  content: "\e051";
}
.glyphicon-align-left:before {
  content: "\e052";
}
.glyphicon-align-center:before {
  content: "\e053";
}
.glyphicon-align-right:before {
  content: "\e054";
}
.glyphicon-align-justify:before {
  content: "\e055";
}
.glyphicon-list:before {
  content: "\e056";
}
.glyphicon-indent-left:before {
  content: "\e057";
}
.glyphicon-indent-right:before {
  content: "\e058";
}
.glyphicon-facetime-video:before {
  content: "\e059";
}
.glyphicon-picture:before {
  content: "\e060";
}
.glyphicon-map-marker:before {
  content: "\e062";
}
.glyphicon-adjust:before {
  content: "\e063";
}
.glyphicon-tint:before {
  content: "\e064";
}
.glyphicon-edit:before {
  content: "\e065";
}
.glyphicon-share:before {
  content: "\e066";
}
.glyphicon-check:before {
  content: "\e067";
}
.glyphicon-move:before {
  content: "\e068";
}
.glyphicon-step-backward:before {
  content: "\e069";
}
.glyphicon-fast-backward:before {
  content: "\e070";
}
.glyphicon-backward:before {
  content: "\e071";
}
.glyphicon-play:before {
  content: "\e072";
}
.glyphicon-pause:before {
  content: "\e073";
}
.glyphicon-stop:before {
  content: "\e074";
}
.glyphicon-forward:before {
  content: "\e075";
}
.glyphicon-fast-forward:before {
  content: "\e076";
}
.glyphicon-step-forward:before {
  content: "\e077";
}
.glyphicon-eject:before {
  content: "\e078";
}
.glyphicon-chevron-left:before {
  content: "\e079";
}
.glyphicon-chevron-right:before {
  content: "\e080";
}
.glyphicon-plus-sign:before {
  content: "\e081";
}
.glyphicon-minus-sign:before {
  content: "\e082";
}
.glyphicon-remove-sign:before {
  content: "\e083";
}
.glyphicon-ok-sign:before {
  content: "\e084";
}
.glyphicon-question-sign:before {
  content: "\e085";
}
.glyphicon-info-sign:before {
  content: "\e086";
}
.glyphicon-screenshot:before {
  content: "\e087";
}
.glyphicon-remove-circle:before {
  content: "\e088";
}
.glyphicon-ok-circle:before {
  content: "\e089";
}
.glyphicon-ban-circle:before {
  content: "\e090";
}
.glyphicon-arrow-left:before {
  content: "\e091";
}
.glyphicon-arrow-right:before {
  content: "\e092";
}
.glyphicon-arrow-up:before {
  content: "\e093";
}
.glyphicon-arrow-down:before {
  content: "\e094";
}
.glyphicon-share-alt:before {
  content: "\e095";
}
.glyphicon-resize-full:before {
  content: "\e096";
}
.glyphicon-resize-small:before {
  content: "\e097";
}
.glyphicon-exclamation-sign:before {
  content: "\e101";
}
.glyphicon-gift:before {
  content: "\e102";
}
.glyphicon-leaf:before {
  content: "\e103";
}
.glyphicon-fire:before {
  content: "\e104";
}
.glyphicon-eye-open:before {
  content: "\e105";
}
.glyphicon-eye-close:before {
  content: "\e106";
}
.glyphicon-warning-sign:before {
  content: "\e107";
}
.glyphicon-plane:before {
  content: "\e108";
}
.glyphicon-calendar:before {
  content: "\e109";
}
.glyphicon-random:before {
  content: "\e110";
}
.glyphicon-comment:before {
  content: "\e111";
}
.glyphicon-magnet:before {
  content: "\e112";
}
.glyphicon-chevron-up:before {
  content: "\e113";
}
.glyphicon-chevron-down:before {
  content: "\e114";
}
.glyphicon-retweet:before {
  content: "\e115";
}
.glyphicon-shopping-cart:before {
  content: "\e116";
}
.glyphicon-folder-close:before {
  content: "\e117";
}
.glyphicon-folder-open:before {
  content: "\e118";
}
.glyphicon-resize-vertical:before {
  content: "\e119";
}
.glyphicon-resize-horizontal:before {
  content: "\e120";
}
.glyphicon-hdd:before {
  content: "\e121";
}
.glyphicon-bullhorn:before {
  content: "\e122";
}
.glyphicon-bell:before {
  content: "\e123";
}
.glyphicon-certificate:before {
  content: "\e124";
}
.glyphicon-thumbs-up:before {
  content: "\e125";
}
.glyphicon-thumbs-down:before {
  content: "\e126";
}
.glyphicon-hand-right:before {
  content: "\e127";
}
.glyphicon-hand-left:before {
  content: "\e128";
}
.glyphicon-hand-up:before {
  content: "\e129";
}
.glyphicon-hand-down:before {
  content: "\e130";
}
.glyphicon-circle-arrow-right:before {
  content: "\e131";
}
.glyphicon-circle-arrow-left:before {
  content: "\e132";
}
.glyphicon-circle-arrow-up:before {
  content: "\e133";
}
.glyphicon-circle-arrow-down:before {
  content: "\e134";
}
.glyphicon-globe:before {
  content: "\e135";
}
.glyphicon-wrench:before {
  content: "\e136";
}
.glyphicon-tasks:before {
  content: "\e137";
}
.glyphicon-filter:before {
  content: "\e138";
}
.glyphicon-briefcase:before {
  content: "\e139";
}
.glyphicon-fullscreen:before {
  content: "\e140";
}
.glyphicon-dashboard:before {
  content: "\e141";
}
.glyphicon-paperclip:before {
  content: "\e142";
}
.glyphicon-heart-empty:before {
  content: "\e143";
}
.glyphicon-link:before {
  content: "\e144";
}
.glyphicon-phone:before {
  content: "\e145";
}
.glyphicon-pushpin:before {
  content: "\e146";
}
.glyphicon-usd:before {
  content: "\e148";
}
.glyphicon-gbp:before {
  content: "\e149";
}
.glyphicon-sort:before {
  content: "\e150";
}
.glyphicon-sort-by-alphabet:before {
  content: "\e151";
}
.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152";
}
.glyphicon-sort-by-order:before {
  content: "\e153";
}
.glyphicon-sort-by-order-alt:before {
  content: "\e154";
}
.glyphicon-sort-by-attributes:before {
  content: "\e155";
}
.glyphicon-sort-by-attributes-alt:before {
  content: "\e156";
}
.glyphicon-unchecked:before {
  content: "\e157";
}
.glyphicon-expand:before {
  content: "\e158";
}
.glyphicon-collapse-down:before {
  content: "\e159";
}
.glyphicon-collapse-up:before {
  content: "\e160";
}
.glyphicon-log-in:before {
  content: "\e161";
}
.glyphicon-flash:before {
  content: "\e162";
}
.glyphicon-log-out:before {
  content: "\e163";
}
.glyphicon-new-window:before {
  content: "\e164";
}
.glyphicon-record:before {
  content: "\e165";
}
.glyphicon-save:before {
  content: "\e166";
}
.glyphicon-open:before {
  content: "\e167";
}
.glyphicon-saved:before {
  content: "\e168";
}
.glyphicon-import:before {
  content: "\e169";
}
.glyphicon-export:before {
  content: "\e170";
}
.glyphicon-send:before {
  content: "\e171";
}
.glyphicon-floppy-disk:before {
  content: "\e172";
}
.glyphicon-floppy-saved:before {
  content: "\e173";
}
.glyphicon-floppy-remove:before {
  content: "\e174";
}
.glyphicon-floppy-save:before {
  content: "\e175";
}
.glyphicon-floppy-open:before {
  content: "\e176";
}
.glyphicon-credit-card:before {
  content: "\e177";
}
.glyphicon-transfer:before {
  content: "\e178";
}
.glyphicon-cutlery:before {
  content: "\e179";
}
.glyphicon-header:before {
  content: "\e180";
}
.glyphicon-compressed:before {
  content: "\e181";
}
.glyphicon-earphone:before {
  content: "\e182";
}
.glyphicon-phone-alt:before {
  content: "\e183";
}
.glyphicon-tower:before {
  content: "\e184";
}
.glyphicon-stats:before {
  content: "\e185";
}
.glyphicon-sd-video:before {
  content: "\e186";
}
.glyphicon-hd-video:before {
  content: "\e187";
}
.glyphicon-subtitles:before {
  content: "\e188";
}
.glyphicon-sound-stereo:before {
  content: "\e189";
}
.glyphicon-sound-dolby:before {
  content: "\e190";
}
.glyphicon-sound-5-1:before {
  content: "\e191";
}
.glyphicon-sound-6-1:before {
  content: "\e192";
}
.glyphicon-sound-7-1:before {
  content: "\e193";
}
.glyphicon-copyright-mark:before {
  content: "\e194";
}
.glyphicon-registration-mark:before {
  content: "\e195";
}
.glyphicon-cloud-download:before {
  content: "\e197";
}
.glyphicon-cloud-upload:before {
  content: "\e198";
}
.glyphicon-tree-conifer:before {
  content: "\e199";
}
.glyphicon-tree-deciduous:before {
  content: "\e200";
}
.glyphicon-cd:before {
  content: "\e201";
}
.glyphicon-save-file:before {
  content: "\e202";
}
.glyphicon-open-file:before {
  content: "\e203";
}
.glyphicon-level-up:before {
  content: "\e204";
}
.glyphicon-copy:before {
  content: "\e205";
}
.glyphicon-paste:before {
  content: "\e206";
}
.glyphicon-alert:before {
  content: "\e209";
}
.glyphicon-equalizer:before {
  content: "\e210";
}
.glyphicon-king:before {
  content: "\e211";
}
.glyphicon-queen:before {
  content: "\e212";
}
.glyphicon-pawn:before {
  content: "\e213";
}
.glyphicon-bishop:before {
  content: "\e214";
}
.glyphicon-knight:before {
  content: "\e215";
}
.glyphicon-baby-formula:before {
  content: "\e216";
}
.glyphicon-tent:before {
  content: "\26fa";
}
.glyphicon-blackboard:before {
  content: "\e218";
}
.glyphicon-bed:before {
  content: "\e219";
}
.glyphicon-apple:before {
  content: "\f8ff";
}
.glyphicon-erase:before {
  content: "\e221";
}
.glyphicon-hourglass:before {
  content: "\231b";
}
.glyphicon-lamp:before {
  content: "\e223";
}
.glyphicon-duplicate:before {
  content: "\e224";
}
.glyphicon-piggy-bank:before {
  content: "\e225";
}
.glyphicon-scissors:before {
  content: "\e226";
}
.glyphicon-bitcoin:before {
  content: "\e227";
}
.glyphicon-btc:before {
  content: "\e227";
}
.glyphicon-xbt:before {
  content: "\e227";
}
.glyphicon-yen:before {
  content: "\00a5";
}
.glyphicon-jpy:before {
  content: "\00a5";
}
.glyphicon-ruble:before {
  content: "\20bd";
}
.glyphicon-rub:before {
  content: "\20bd";
}
.glyphicon-scale:before {
  content: "\e230";
}
.glyphicon-ice-lolly:before {
  content: "\e231";
}
.glyphicon-ice-lolly-tasted:before {
  content: "\e232";
}
.glyphicon-education:before {
  content: "\e233";
}
.glyphicon-option-horizontal:before {
  content: "\e234";
}
.glyphicon-option-vertical:before {
  content: "\e235";
}
.glyphicon-menu-hamburger:before {
  content: "\e236";
}
.glyphicon-modal-window:before {
  content: "\e237";
}
.glyphicon-oil:before {
  content: "\e238";
}
.glyphicon-grain:before {
  content: "\e239";
}
.glyphicon-sunglasses:before {
  content: "\e240";
}
.glyphicon-text-size:before {
  content: "\e241";
}
.glyphicon-text-color:before {
  content: "\e242";
}
.glyphicon-text-background:before {
  content: "\e243";
}
.glyphicon-object-align-top:before {
  content: "\e244";
}
.glyphicon-object-align-bottom:before {
  content: "\e245";
}
.glyphicon-object-align-horizontal:before {
  content: "\e246";
}
.glyphicon-object-align-left:before {
  content: "\e247";
}
.glyphicon-object-align-vertical:before {
  content: "\e248";
}
.glyphicon-object-align-right:before {
  content: "\e249";
}
.glyphicon-triangle-right:before {
  content: "\e250";
}
.glyphicon-triangle-left:before {
  content: "\e251";
}
.glyphicon-triangle-bottom:before {
  content: "\e252";
}
.glyphicon-triangle-top:before {
  content: "\e253";
}
.glyphicon-console:before {
  content: "\e254";
}
.glyphicon-superscript:before {
  content: "\e255";
}
.glyphicon-subscript:before {
  content: "\e256";
}
.glyphicon-menu-left:before {
  content: "\e257";
}
.glyphicon-menu-right:before {
  content: "\e258";
}
.glyphicon-menu-down:before {
  content: "\e259";
}
.glyphicon-menu-up:before {
  content: "\e260";
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: 10px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 13px;
  line-height: 1.42857143;
  color: #000;
  background-color: #fff;
}
input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
a {
  color: #337ab7;
  text-decoration: none;
}
a:hover,
a:focus {
  color: #23527c;
  text-decoration: underline;
}
a:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
figure {
  margin: 0;
}
img {
  vertical-align: middle;
}
.img-responsive,
.thumbnail > img,
.thumbnail a > img,
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  display: block;
  max-width: 100%;
  height: auto;
}
.img-rounded {
  border-radius: 3px;
}
.img-thumbnail {
  padding: 4px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 2px;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto;
}
.img-circle {
  border-radius: 50%;
}
hr {
  margin-top: 18px;
  margin-bottom: 18px;
  border: 0;
  border-top: 1px solid #eeeeee;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto;
}
[role="button"] {
  cursor: pointer;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit;
}
h1 small,
h2 small,
h3 small,
h4 small,
h5 small,
h6 small,
.h1 small,
.h2 small,
.h3 small,
.h4 small,
.h5 small,
.h6 small,
h1 .small,
h2 .small,
h3 .small,
h4 .small,
h5 .small,
h6 .small,
.h1 .small,
.h2 .small,
.h3 .small,
.h4 .small,
.h5 .small,
.h6 .small {
  font-weight: normal;
  line-height: 1;
  color: #777777;
}
h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-top: 18px;
  margin-bottom: 9px;
}
h1 small,
.h1 small,
h2 small,
.h2 small,
h3 small,
.h3 small,
h1 .small,
.h1 .small,
h2 .small,
.h2 .small,
h3 .small,
.h3 .small {
  font-size: 65%;
}
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin-top: 9px;
  margin-bottom: 9px;
}
h4 small,
.h4 small,
h5 small,
.h5 small,
h6 small,
.h6 small,
h4 .small,
.h4 .small,
h5 .small,
.h5 .small,
h6 .small,
.h6 .small {
  font-size: 75%;
}
h1,
.h1 {
  font-size: 33px;
}
h2,
.h2 {
  font-size: 27px;
}
h3,
.h3 {
  font-size: 23px;
}
h4,
.h4 {
  font-size: 17px;
}
h5,
.h5 {
  font-size: 13px;
}
h6,
.h6 {
  font-size: 12px;
}
p {
  margin: 0 0 9px;
}
.lead {
  margin-bottom: 18px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .lead {
    font-size: 19.5px;
  }
}
small,
.small {
  font-size: 92%;
}
mark,
.mark {
  background-color: #fcf8e3;
  padding: .2em;
}
.text-left {
  text-align: left;
}
.text-right {
  text-align: right;
}
.text-center {
  text-align: center;
}
.text-justify {
  text-align: justify;
}
.text-nowrap {
  white-space: nowrap;
}
.text-lowercase {
  text-transform: lowercase;
}
.text-uppercase {
  text-transform: uppercase;
}
.text-capitalize {
  text-transform: capitalize;
}
.text-muted {
  color: #777777;
}
.text-primary {
  color: #337ab7;
}
a.text-primary:hover,
a.text-primary:focus {
  color: #286090;
}
.text-success {
  color: #3c763d;
}
a.text-success:hover,
a.text-success:focus {
  color: #2b542c;
}
.text-info {
  color: #31708f;
}
a.text-info:hover,
a.text-info:focus {
  color: #245269;
}
.text-warning {
  color: #8a6d3b;
}
a.text-warning:hover,
a.text-warning:focus {
  color: #66512c;
}
.text-danger {
  color: #a94442;
}
a.text-danger:hover,
a.text-danger:focus {
  color: #843534;
}
.bg-primary {
  color: #fff;
  background-color: #337ab7;
}
a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090;
}
.bg-success {
  background-color: #dff0d8;
}
a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3;
}
.bg-info {
  background-color: #d9edf7;
}
a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee;
}
.bg-warning {
  background-color: #fcf8e3;
}
a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5;
}
.bg-danger {
  background-color: #f2dede;
}
a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9;
}
.page-header {
  padding-bottom: 8px;
  margin: 36px 0 18px;
  border-bottom: 1px solid #eeeeee;
}
ul,
ol {
  margin-top: 0;
  margin-bottom: 9px;
}
ul ul,
ol ul,
ul ol,
ol ol {
  margin-bottom: 0;
}
.list-unstyled {
  padding-left: 0;
  list-style: none;
}
.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px;
}
.list-inline > li {
  display: inline-block;
  padding-left: 5px;
  padding-right: 5px;
}
dl {
  margin-top: 0;
  margin-bottom: 18px;
}
dt,
dd {
  line-height: 1.42857143;
}
dt {
  font-weight: bold;
}
dd {
  margin-left: 0;
}
@media (min-width: 541px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .dl-horizontal dd {
    margin-left: 180px;
  }
}
abbr[title],
abbr[data-original-title] {
  cursor: help;
  border-bottom: 1px dotted #777777;
}
.initialism {
  font-size: 90%;
  text-transform: uppercase;
}
blockquote {
  padding: 9px 18px;
  margin: 0 0 18px;
  font-size: inherit;
  border-left: 5px solid #eeeeee;
}
blockquote p:last-child,
blockquote ul:last-child,
blockquote ol:last-child {
  margin-bottom: 0;
}
blockquote footer,
blockquote small,
blockquote .small {
  display: block;
  font-size: 80%;
  line-height: 1.42857143;
  color: #777777;
}
blockquote footer:before,
blockquote small:before,
blockquote .small:before {
  content: '\2014 \00A0';
}
.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  border-right: 5px solid #eeeeee;
  border-left: 0;
  text-align: right;
}
.blockquote-reverse footer:before,
blockquote.pull-right footer:before,
.blockquote-reverse small:before,
blockquote.pull-right small:before,
.blockquote-reverse .small:before,
blockquote.pull-right .small:before {
  content: '';
}
.blockquote-reverse footer:after,
blockquote.pull-right footer:after,
.blockquote-reverse small:after,
blockquote.pull-right small:after,
.blockquote-reverse .small:after,
blockquote.pull-right .small:after {
  content: '\00A0 \2014';
}
address {
  margin-bottom: 18px;
  font-style: normal;
  line-height: 1.42857143;
}
code,
kbd,
pre,
samp {
  font-family: monospace;
}
code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 2px;
}
kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #888;
  background-color: transparent;
  border-radius: 1px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25);
}
kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: bold;
  box-shadow: none;
}
pre {
  display: block;
  padding: 8.5px;
  margin: 0 0 9px;
  font-size: 12px;
  line-height: 1.42857143;
  word-break: break-all;
  word-wrap: break-word;
  color: #333333;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 2px;
}
pre code {
  padding: 0;
  font-size: inherit;
  color: inherit;
  white-space: pre-wrap;
  background-color: transparent;
  border-radius: 0;
}
.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}
.container {
  margin-right: auto;
  margin-left: auto;
  padding-left: 0px;
  padding-right: 0px;
}
@media (min-width: 768px) {
  .container {
    width: 768px;
  }
}
@media (min-width: 992px) {
  .container {
    width: 940px;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 1140px;
  }
}
.container-fluid {
  margin-right: auto;
  margin-left: auto;
  padding-left: 0px;
  padding-right: 0px;
}
.row {
  margin-left: 0px;
  margin-right: 0px;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-left: 0px;
  padding-right: 0px;
}
.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left;
}
.col-xs-12 {
  width: 100%;
}
.col-xs-11 {
  width: 91.66666667%;
}
.col-xs-10 {
  width: 83.33333333%;
}
.col-xs-9 {
  width: 75%;
}
.col-xs-8 {
  width: 66.66666667%;
}
.col-xs-7 {
  width: 58.33333333%;
}
.col-xs-6 {
  width: 50%;
}
.col-xs-5 {
  width: 41.66666667%;
}
.col-xs-4 {
  width: 33.33333333%;
}
.col-xs-3 {
  width: 25%;
}
.col-xs-2 {
  width: 16.66666667%;
}
.col-xs-1 {
  width: 8.33333333%;
}
.col-xs-pull-12 {
  right: 100%;
}
.col-xs-pull-11 {
  right: 91.66666667%;
}
.col-xs-pull-10 {
  right: 83.33333333%;
}
.col-xs-pull-9 {
  right: 75%;
}
.col-xs-pull-8 {
  right: 66.66666667%;
}
.col-xs-pull-7 {
  right: 58.33333333%;
}
.col-xs-pull-6 {
  right: 50%;
}
.col-xs-pull-5 {
  right: 41.66666667%;
}
.col-xs-pull-4 {
  right: 33.33333333%;
}
.col-xs-pull-3 {
  right: 25%;
}
.col-xs-pull-2 {
  right: 16.66666667%;
}
.col-xs-pull-1 {
  right: 8.33333333%;
}
.col-xs-pull-0 {
  right: auto;
}
.col-xs-push-12 {
  left: 100%;
}
.col-xs-push-11 {
  left: 91.66666667%;
}
.col-xs-push-10 {
  left: 83.33333333%;
}
.col-xs-push-9 {
  left: 75%;
}
.col-xs-push-8 {
  left: 66.66666667%;
}
.col-xs-push-7 {
  left: 58.33333333%;
}
.col-xs-push-6 {
  left: 50%;
}
.col-xs-push-5 {
  left: 41.66666667%;
}
.col-xs-push-4 {
  left: 33.33333333%;
}
.col-xs-push-3 {
  left: 25%;
}
.col-xs-push-2 {
  left: 16.66666667%;
}
.col-xs-push-1 {
  left: 8.33333333%;
}
.col-xs-push-0 {
  left: auto;
}
.col-xs-offset-12 {
  margin-left: 100%;
}
.col-xs-offset-11 {
  margin-left: 91.66666667%;
}
.col-xs-offset-10 {
  margin-left: 83.33333333%;
}
.col-xs-offset-9 {
  margin-left: 75%;
}
.col-xs-offset-8 {
  margin-left: 66.66666667%;
}
.col-xs-offset-7 {
  margin-left: 58.33333333%;
}
.col-xs-offset-6 {
  margin-left: 50%;
}
.col-xs-offset-5 {
  margin-left: 41.66666667%;
}
.col-xs-offset-4 {
  margin-left: 33.33333333%;
}
.col-xs-offset-3 {
  margin-left: 25%;
}
.col-xs-offset-2 {
  margin-left: 16.66666667%;
}
.col-xs-offset-1 {
  margin-left: 8.33333333%;
}
.col-xs-offset-0 {
  margin-left: 0%;
}
@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left;
  }
  .col-sm-12 {
    width: 100%;
  }
  .col-sm-11 {
    width: 91.66666667%;
  }
  .col-sm-10 {
    width: 83.33333333%;
  }
  .col-sm-9 {
    width: 75%;
  }
  .col-sm-8 {
    width: 66.66666667%;
  }
  .col-sm-7 {
    width: 58.33333333%;
  }
  .col-sm-6 {
    width: 50%;
  }
  .col-sm-5 {
    width: 41.66666667%;
  }
  .col-sm-4 {
    width: 33.33333333%;
  }
  .col-sm-3 {
    width: 25%;
  }
  .col-sm-2 {
    width: 16.66666667%;
  }
  .col-sm-1 {
    width: 8.33333333%;
  }
  .col-sm-pull-12 {
    right: 100%;
  }
  .col-sm-pull-11 {
    right: 91.66666667%;
  }
  .col-sm-pull-10 {
    right: 83.33333333%;
  }
  .col-sm-pull-9 {
    right: 75%;
  }
  .col-sm-pull-8 {
    right: 66.66666667%;
  }
  .col-sm-pull-7 {
    right: 58.33333333%;
  }
  .col-sm-pull-6 {
    right: 50%;
  }
  .col-sm-pull-5 {
    right: 41.66666667%;
  }
  .col-sm-pull-4 {
    right: 33.33333333%;
  }
  .col-sm-pull-3 {
    right: 25%;
  }
  .col-sm-pull-2 {
    right: 16.66666667%;
  }
  .col-sm-pull-1 {
    right: 8.33333333%;
  }
  .col-sm-pull-0 {
    right: auto;
  }
  .col-sm-push-12 {
    left: 100%;
  }
  .col-sm-push-11 {
    left: 91.66666667%;
  }
  .col-sm-push-10 {
    left: 83.33333333%;
  }
  .col-sm-push-9 {
    left: 75%;
  }
  .col-sm-push-8 {
    left: 66.66666667%;
  }
  .col-sm-push-7 {
    left: 58.33333333%;
  }
  .col-sm-push-6 {
    left: 50%;
  }
  .col-sm-push-5 {
    left: 41.66666667%;
  }
  .col-sm-push-4 {
    left: 33.33333333%;
  }
  .col-sm-push-3 {
    left: 25%;
  }
  .col-sm-push-2 {
    left: 16.66666667%;
  }
  .col-sm-push-1 {
    left: 8.33333333%;
  }
  .col-sm-push-0 {
    left: auto;
  }
  .col-sm-offset-12 {
    margin-left: 100%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left;
  }
  .col-md-12 {
    width: 100%;
  }
  .col-md-11 {
    width: 91.66666667%;
  }
  .col-md-10 {
    width: 83.33333333%;
  }
  .col-md-9 {
    width: 75%;
  }
  .col-md-8 {
    width: 66.66666667%;
  }
  .col-md-7 {
    width: 58.33333333%;
  }
  .col-md-6 {
    width: 50%;
  }
  .col-md-5 {
    width: 41.66666667%;
  }
  .col-md-4 {
    width: 33.33333333%;
  }
  .col-md-3 {
    width: 25%;
  }
  .col-md-2 {
    width: 16.66666667%;
  }
  .col-md-1 {
    width: 8.33333333%;
  }
  .col-md-pull-12 {
    right: 100%;
  }
  .col-md-pull-11 {
    right: 91.66666667%;
  }
  .col-md-pull-10 {
    right: 83.33333333%;
  }
  .col-md-pull-9 {
    right: 75%;
  }
  .col-md-pull-8 {
    right: 66.66666667%;
  }
  .col-md-pull-7 {
    right: 58.33333333%;
  }
  .col-md-pull-6 {
    right: 50%;
  }
  .col-md-pull-5 {
    right: 41.66666667%;
  }
  .col-md-pull-4 {
    right: 33.33333333%;
  }
  .col-md-pull-3 {
    right: 25%;
  }
  .col-md-pull-2 {
    right: 16.66666667%;
  }
  .col-md-pull-1 {
    right: 8.33333333%;
  }
  .col-md-pull-0 {
    right: auto;
  }
  .col-md-push-12 {
    left: 100%;
  }
  .col-md-push-11 {
    left: 91.66666667%;
  }
  .col-md-push-10 {
    left: 83.33333333%;
  }
  .col-md-push-9 {
    left: 75%;
  }
  .col-md-push-8 {
    left: 66.66666667%;
  }
  .col-md-push-7 {
    left: 58.33333333%;
  }
  .col-md-push-6 {
    left: 50%;
  }
  .col-md-push-5 {
    left: 41.66666667%;
  }
  .col-md-push-4 {
    left: 33.33333333%;
  }
  .col-md-push-3 {
    left: 25%;
  }
  .col-md-push-2 {
    left: 16.66666667%;
  }
  .col-md-push-1 {
    left: 8.33333333%;
  }
  .col-md-push-0 {
    left: auto;
  }
  .col-md-offset-12 {
    margin-left: 100%;
  }
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-0 {
    margin-left: 0%;
  }
}
@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left;
  }
  .col-lg-12 {
    width: 100%;
  }
  .col-lg-11 {
    width: 91.66666667%;
  }
  .col-lg-10 {
    width: 83.33333333%;
  }
  .col-lg-9 {
    width: 75%;
  }
  .col-lg-8 {
    width: 66.66666667%;
  }
  .col-lg-7 {
    width: 58.33333333%;
  }
  .col-lg-6 {
    width: 50%;
  }
  .col-lg-5 {
    width: 41.66666667%;
  }
  .col-lg-4 {
    width: 33.33333333%;
  }
  .col-lg-3 {
    width: 25%;
  }
  .col-lg-2 {
    width: 16.66666667%;
  }
  .col-lg-1 {
    width: 8.33333333%;
  }
  .col-lg-pull-12 {
    right: 100%;
  }
  .col-lg-pull-11 {
    right: 91.66666667%;
  }
  .col-lg-pull-10 {
    right: 83.33333333%;
  }
  .col-lg-pull-9 {
    right: 75%;
  }
  .col-lg-pull-8 {
    right: 66.66666667%;
  }
  .col-lg-pull-7 {
    right: 58.33333333%;
  }
  .col-lg-pull-6 {
    right: 50%;
  }
  .col-lg-pull-5 {
    right: 41.66666667%;
  }
  .col-lg-pull-4 {
    right: 33.33333333%;
  }
  .col-lg-pull-3 {
    right: 25%;
  }
  .col-lg-pull-2 {
    right: 16.66666667%;
  }
  .col-lg-pull-1 {
    right: 8.33333333%;
  }
  .col-lg-pull-0 {
    right: auto;
  }
  .col-lg-push-12 {
    left: 100%;
  }
  .col-lg-push-11 {
    left: 91.66666667%;
  }
  .col-lg-push-10 {
    left: 83.33333333%;
  }
  .col-lg-push-9 {
    left: 75%;
  }
  .col-lg-push-8 {
    left: 66.66666667%;
  }
  .col-lg-push-7 {
    left: 58.33333333%;
  }
  .col-lg-push-6 {
    left: 50%;
  }
  .col-lg-push-5 {
    left: 41.66666667%;
  }
  .col-lg-push-4 {
    left: 33.33333333%;
  }
  .col-lg-push-3 {
    left: 25%;
  }
  .col-lg-push-2 {
    left: 16.66666667%;
  }
  .col-lg-push-1 {
    left: 8.33333333%;
  }
  .col-lg-push-0 {
    left: auto;
  }
  .col-lg-offset-12 {
    margin-left: 100%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-lg-offset-0 {
    margin-left: 0%;
  }
}
table {
  background-color: transparent;
}
caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777777;
  text-align: left;
}
th {
  text-align: left;
}
.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 18px;
}
.table > thead > tr > th,
.table > tbody > tr > th,
.table > tfoot > tr > th,
.table > thead > tr > td,
.table > tbody > tr > td,
.table > tfoot > tr > td {
  padding: 8px;
  line-height: 1.42857143;
  vertical-align: top;
  border-top: 1px solid #ddd;
}
.table > thead > tr > th {
  vertical-align: bottom;
  border-bottom: 2px solid #ddd;
}
.table > caption + thead > tr:first-child > th,
.table > colgroup + thead > tr:first-child > th,
.table > thead:first-child > tr:first-child > th,
.table > caption + thead > tr:first-child > td,
.table > colgroup + thead > tr:first-child > td,
.table > thead:first-child > tr:first-child > td {
  border-top: 0;
}
.table > tbody + tbody {
  border-top: 2px solid #ddd;
}
.table .table {
  background-color: #fff;
}
.table-condensed > thead > tr > th,
.table-condensed > tbody > tr > th,
.table-condensed > tfoot > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > td {
  padding: 5px;
}
.table-bordered {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > tbody > tr > th,
.table-bordered > tfoot > tr > th,
.table-bordered > thead > tr > td,
.table-bordered > tbody > tr > td,
.table-bordered > tfoot > tr > td {
  border: 1px solid #ddd;
}
.table-bordered > thead > tr > th,
.table-bordered > thead > tr > td {
  border-bottom-width: 2px;
}
.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9;
}
.table-hover > tbody > tr:hover {
  background-color: #f5f5f5;
}
table col[class*="col-"] {
  position: static;
  float: none;
  display: table-column;
}
table td[class*="col-"],
table th[class*="col-"] {
  position: static;
  float: none;
  display: table-cell;
}
.table > thead > tr > td.active,
.table > tbody > tr > td.active,
.table > tfoot > tr > td.active,
.table > thead > tr > th.active,
.table > tbody > tr > th.active,
.table > tfoot > tr > th.active,
.table > thead > tr.active > td,
.table > tbody > tr.active > td,
.table > tfoot > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr.active > th,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5;
}
.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8;
}
.table > thead > tr > td.success,
.table > tbody > tr > td.success,
.table > tfoot > tr > td.success,
.table > thead > tr > th.success,
.table > tbody > tr > th.success,
.table > tfoot > tr > th.success,
.table > thead > tr.success > td,
.table > tbody > tr.success > td,
.table > tfoot > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr.success > th,
.table > tfoot > tr.success > th {
  background-color: #dff0d8;
}
.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6;
}
.table > thead > tr > td.info,
.table > tbody > tr > td.info,
.table > tfoot > tr > td.info,
.table > thead > tr > th.info,
.table > tbody > tr > th.info,
.table > tfoot > tr > th.info,
.table > thead > tr.info > td,
.table > tbody > tr.info > td,
.table > tfoot > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr.info > th,
.table > tfoot > tr.info > th {
  background-color: #d9edf7;
}
.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3;
}
.table > thead > tr > td.warning,
.table > tbody > tr > td.warning,
.table > tfoot > tr > td.warning,
.table > thead > tr > th.warning,
.table > tbody > tr > th.warning,
.table > tfoot > tr > th.warning,
.table > thead > tr.warning > td,
.table > tbody > tr.warning > td,
.table > tfoot > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr.warning > th,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3;
}
.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc;
}
.table > thead > tr > td.danger,
.table > tbody > tr > td.danger,
.table > tfoot > tr > td.danger,
.table > thead > tr > th.danger,
.table > tbody > tr > th.danger,
.table > tfoot > tr > th.danger,
.table > thead > tr.danger > td,
.table > tbody > tr.danger > td,
.table > tfoot > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr.danger > th,
.table > tfoot > tr.danger > th {
  background-color: #f2dede;
}
.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc;
}
.table-responsive {
  overflow-x: auto;
  min-height: 0.01%;
}
@media screen and (max-width: 767px) {
  .table-responsive {
    width: 100%;
    margin-bottom: 13.5px;
    overflow-y: hidden;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    border: 1px solid #ddd;
  }
  .table-responsive > .table {
    margin-bottom: 0;
  }
  .table-responsive > .table > thead > tr > th,
  .table-responsive > .table > tbody > tr > th,
  .table-responsive > .table > tfoot > tr > th,
  .table-responsive > .table > thead > tr > td,
  .table-responsive > .table > tbody > tr > td,
  .table-responsive > .table > tfoot > tr > td {
    white-space: nowrap;
  }
  .table-responsive > .table-bordered {
    border: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:first-child,
  .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .table-responsive > .table-bordered > thead > tr > td:first-child,
  .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0;
  }
  .table-responsive > .table-bordered > thead > tr > th:last-child,
  .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .table-responsive > .table-bordered > thead > tr > td:last-child,
  .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0;
  }
  .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .table-responsive > .table-bordered > tfoot > tr:last-child > th,
  .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .table-responsive > .table-bordered > tfoot > tr:last-child > td {
    border-bottom: 0;
  }
}
fieldset {
  padding: 0;
  margin: 0;
  border: 0;
  min-width: 0;
}
legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 18px;
  font-size: 19.5px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5;
}
label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: bold;
}
input[type="search"] {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal;
}
input[type="file"] {
  display: block;
}
input[type="range"] {
  display: block;
  width: 100%;
}
select[multiple],
select[size] {
  height: auto;
}
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
output {
  display: block;
  padding-top: 7px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #555555;
}
.form-control {
  display: block;
  width: 100%;
  height: 32px;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form-control:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}
.form-control::-ms-expand {
  border: 0;
  background-color: transparent;
}
.form-control[disabled],
.form-control[readonly],
fieldset[disabled] .form-control {
  background-color: #eeeeee;
  opacity: 1;
}
.form-control[disabled],
fieldset[disabled] .form-control {
  cursor: not-allowed;
}
textarea.form-control {
  height: auto;
}
input[type="search"] {
  -webkit-appearance: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 32px;
  }
  input[type="date"].input-sm,
  input[type="time"].input-sm,
  input[type="datetime-local"].input-sm,
  input[type="month"].input-sm,
  .input-group-sm input[type="date"],
  .input-group-sm input[type="time"],
  .input-group-sm input[type="datetime-local"],
  .input-group-sm input[type="month"] {
    line-height: 30px;
  }
  input[type="date"].input-lg,
  input[type="time"].input-lg,
  input[type="datetime-local"].input-lg,
  input[type="month"].input-lg,
  .input-group-lg input[type="date"],
  .input-group-lg input[type="time"],
  .input-group-lg input[type="datetime-local"],
  .input-group-lg input[type="month"] {
    line-height: 45px;
  }
}
.form-group {
  margin-bottom: 15px;
}
.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px;
}
.radio label,
.checkbox label {
  min-height: 18px;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: normal;
  cursor: pointer;
}
.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-left: -20px;
  margin-top: 4px \9;
}
.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px;
}
.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  vertical-align: middle;
  font-weight: normal;
  cursor: pointer;
}
.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px;
}
input[type="radio"][disabled],
input[type="checkbox"][disabled],
input[type="radio"].disabled,
input[type="checkbox"].disabled,
fieldset[disabled] input[type="radio"],
fieldset[disabled] input[type="checkbox"] {
  cursor: not-allowed;
}
.radio-inline.disabled,
.checkbox-inline.disabled,
fieldset[disabled] .radio-inline,
fieldset[disabled] .checkbox-inline {
  cursor: not-allowed;
}
.radio.disabled label,
.checkbox.disabled label,
fieldset[disabled] .radio label,
fieldset[disabled] .checkbox label {
  cursor: not-allowed;
}
.form-control-static {
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0;
  min-height: 31px;
}
.form-control-static.input-lg,
.form-control-static.input-sm {
  padding-left: 0;
  padding-right: 0;
}
.input-sm {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
select.input-sm {
  height: 30px;
  line-height: 30px;
}
textarea.input-sm,
select[multiple].input-sm {
  height: auto;
}
.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px;
}
.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto;
}
.form-group-sm .form-control-static {
  height: 30px;
  min-height: 30px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.input-lg {
  height: 45px;
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
select.input-lg {
  height: 45px;
  line-height: 45px;
}
textarea.input-lg,
select[multiple].input-lg {
  height: auto;
}
.form-group-lg .form-control {
  height: 45px;
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
.form-group-lg select.form-control {
  height: 45px;
  line-height: 45px;
}
.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto;
}
.form-group-lg .form-control-static {
  height: 45px;
  min-height: 35px;
  padding: 11px 16px;
  font-size: 17px;
  line-height: 1.3333333;
}
.has-feedback {
  position: relative;
}
.has-feedback .form-control {
  padding-right: 40px;
}
.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  pointer-events: none;
}
.input-lg + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 45px;
  height: 45px;
  line-height: 45px;
}
.input-sm + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px;
}
.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d;
}
.has-success .form-control {
  border-color: #3c763d;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-success .form-control:focus {
  border-color: #2b542c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168;
}
.has-success .input-group-addon {
  color: #3c763d;
  border-color: #3c763d;
  background-color: #dff0d8;
}
.has-success .form-control-feedback {
  color: #3c763d;
}
.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b;
}
.has-warning .form-control {
  border-color: #8a6d3b;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-warning .form-control:focus {
  border-color: #66512c;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b;
}
.has-warning .input-group-addon {
  color: #8a6d3b;
  border-color: #8a6d3b;
  background-color: #fcf8e3;
}
.has-warning .form-control-feedback {
  color: #8a6d3b;
}
.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442;
}
.has-error .form-control {
  border-color: #a94442;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.has-error .form-control:focus {
  border-color: #843534;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483;
}
.has-error .input-group-addon {
  color: #a94442;
  border-color: #a94442;
  background-color: #f2dede;
}
.has-error .form-control-feedback {
  color: #a94442;
}
.has-feedback label ~ .form-control-feedback {
  top: 23px;
}
.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0;
}
.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #404040;
}
@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-static {
    display: inline-block;
  }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .form-inline .input-group .input-group-addon,
  .form-inline .input-group .input-group-btn,
  .form-inline .input-group .form-control {
    width: auto;
  }
  .form-inline .input-group > .form-control {
    width: 100%;
  }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .form-inline .radio label,
  .form-inline .checkbox label {
    padding-left: 0;
  }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .form-inline .has-feedback .form-control-feedback {
    top: 0;
  }
}
.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 7px;
}
.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 25px;
}
.form-horizontal .form-group {
  margin-left: 0px;
  margin-right: 0px;
}
@media (min-width: 768px) {
  .form-horizontal .control-label {
    text-align: right;
    margin-bottom: 0;
    padding-top: 7px;
  }
}
.form-horizontal .has-feedback .form-control-feedback {
  right: 0px;
}
@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 17px;
  }
}
@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px;
  }
}
.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.42857143;
  border-radius: 2px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.btn:focus,
.btn:active:focus,
.btn.active:focus,
.btn.focus,
.btn:active.focus,
.btn.active.focus {
  outline: thin dotted;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:hover,
.btn:focus,
.btn.focus {
  color: #333;
  text-decoration: none;
}
.btn:active,
.btn.active {
  outline: 0;
  background-image: none;
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn.disabled,
.btn[disabled],
fieldset[disabled] .btn {
  cursor: not-allowed;
  opacity: 0.65;
  filter: alpha(opacity=65);
  -webkit-box-shadow: none;
  box-shadow: none;
}
a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none;
}
.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-default:focus,
.btn-default.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.btn-default:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-default:active:hover,
.btn-default.active:hover,
.open > .dropdown-toggle.btn-default:hover,
.btn-default:active:focus,
.btn-default.active:focus,
.open > .dropdown-toggle.btn-default:focus,
.btn-default:active.focus,
.btn-default.active.focus,
.open > .dropdown-toggle.btn-default.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.btn-default:active,
.btn-default.active,
.open > .dropdown-toggle.btn-default {
  background-image: none;
}
.btn-default.disabled:hover,
.btn-default[disabled]:hover,
fieldset[disabled] .btn-default:hover,
.btn-default.disabled:focus,
.btn-default[disabled]:focus,
fieldset[disabled] .btn-default:focus,
.btn-default.disabled.focus,
.btn-default[disabled].focus,
fieldset[disabled] .btn-default.focus {
  background-color: #fff;
  border-color: #ccc;
}
.btn-default .badge {
  color: #fff;
  background-color: #333;
}
.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary:focus,
.btn-primary.focus {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}
.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:active:hover,
.btn-primary.active:hover,
.open > .dropdown-toggle.btn-primary:hover,
.btn-primary:active:focus,
.btn-primary.active:focus,
.open > .dropdown-toggle.btn-primary:focus,
.btn-primary:active.focus,
.btn-primary.active.focus,
.open > .dropdown-toggle.btn-primary.focus {
  color: #fff;
  background-color: #204d74;
  border-color: #122b40;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  background-image: none;
}
.btn-primary.disabled:hover,
.btn-primary[disabled]:hover,
fieldset[disabled] .btn-primary:hover,
.btn-primary.disabled:focus,
.btn-primary[disabled]:focus,
fieldset[disabled] .btn-primary:focus,
.btn-primary.disabled.focus,
.btn-primary[disabled].focus,
fieldset[disabled] .btn-primary.focus {
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}
.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success:focus,
.btn-success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:active:hover,
.btn-success.active:hover,
.open > .dropdown-toggle.btn-success:hover,
.btn-success:active:focus,
.btn-success.active:focus,
.open > .dropdown-toggle.btn-success:focus,
.btn-success:active.focus,
.btn-success.active.focus,
.open > .dropdown-toggle.btn-success.focus {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.btn-success:active,
.btn-success.active,
.open > .dropdown-toggle.btn-success {
  background-image: none;
}
.btn-success.disabled:hover,
.btn-success[disabled]:hover,
fieldset[disabled] .btn-success:hover,
.btn-success.disabled:focus,
.btn-success[disabled]:focus,
fieldset[disabled] .btn-success:focus,
.btn-success.disabled.focus,
.btn-success[disabled].focus,
fieldset[disabled] .btn-success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}
.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info:focus,
.btn-info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:active:hover,
.btn-info.active:hover,
.open > .dropdown-toggle.btn-info:hover,
.btn-info:active:focus,
.btn-info.active:focus,
.open > .dropdown-toggle.btn-info:focus,
.btn-info:active.focus,
.btn-info.active.focus,
.open > .dropdown-toggle.btn-info.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}
.btn-info:active,
.btn-info.active,
.open > .dropdown-toggle.btn-info {
  background-image: none;
}
.btn-info.disabled:hover,
.btn-info[disabled]:hover,
fieldset[disabled] .btn-info:hover,
.btn-info.disabled:focus,
.btn-info[disabled]:focus,
fieldset[disabled] .btn-info:focus,
.btn-info.disabled.focus,
.btn-info[disabled].focus,
fieldset[disabled] .btn-info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}
.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning:focus,
.btn-warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:active:hover,
.btn-warning.active:hover,
.open > .dropdown-toggle.btn-warning:hover,
.btn-warning:active:focus,
.btn-warning.active:focus,
.open > .dropdown-toggle.btn-warning:focus,
.btn-warning:active.focus,
.btn-warning.active.focus,
.open > .dropdown-toggle.btn-warning.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #985f0d;
}
.btn-warning:active,
.btn-warning.active,
.open > .dropdown-toggle.btn-warning {
  background-image: none;
}
.btn-warning.disabled:hover,
.btn-warning[disabled]:hover,
fieldset[disabled] .btn-warning:hover,
.btn-warning.disabled:focus,
.btn-warning[disabled]:focus,
fieldset[disabled] .btn-warning:focus,
.btn-warning.disabled.focus,
.btn-warning[disabled].focus,
fieldset[disabled] .btn-warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger:focus,
.btn-danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:active:hover,
.btn-danger.active:hover,
.open > .dropdown-toggle.btn-danger:hover,
.btn-danger:active:focus,
.btn-danger.active:focus,
.open > .dropdown-toggle.btn-danger:focus,
.btn-danger:active.focus,
.btn-danger.active.focus,
.open > .dropdown-toggle.btn-danger.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  background-image: none;
}
.btn-danger.disabled:hover,
.btn-danger[disabled]:hover,
fieldset[disabled] .btn-danger:hover,
.btn-danger.disabled:focus,
.btn-danger[disabled]:focus,
fieldset[disabled] .btn-danger:focus,
.btn-danger.disabled.focus,
.btn-danger[disabled].focus,
fieldset[disabled] .btn-danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger .badge {
  color: #d9534f;
  background-color: #fff;
}
.btn-link {
  color: #337ab7;
  font-weight: normal;
  border-radius: 0;
}
.btn-link,
.btn-link:active,
.btn-link.active,
.btn-link[disabled],
fieldset[disabled] .btn-link {
  background-color: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn-link,
.btn-link:hover,
.btn-link:focus,
.btn-link:active {
  border-color: transparent;
}
.btn-link:hover,
.btn-link:focus {
  color: #23527c;
  text-decoration: underline;
  background-color: transparent;
}
.btn-link[disabled]:hover,
fieldset[disabled] .btn-link:hover,
.btn-link[disabled]:focus,
fieldset[disabled] .btn-link:focus {
  color: #777777;
  text-decoration: none;
}
.btn-lg,
.btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
.btn-sm,
.btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
.btn-xs,
.btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 5px;
}
input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}
.fade {
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  -o-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
}
.fade.in {
  opacity: 1;
}
.collapse {
  display: none;
}
.collapse.in {
  display: block;
}
tr.collapse.in {
  display: table-row;
}
tbody.collapse.in {
  display: table-row-group;
}
.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  -webkit-transition-property: height, visibility;
  transition-property: height, visibility;
  -webkit-transition-duration: 0.35s;
  transition-duration: 0.35s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
}
.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
}
.dropup,
.dropdown {
  position: relative;
}
.dropdown-toggle:focus {
  outline: 0;
}
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  list-style: none;
  font-size: 13px;
  text-align: left;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 2px;
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  background-clip: padding-box;
}
.dropdown-menu.pull-right {
  right: 0;
  left: auto;
}
.dropdown-menu .divider {
  height: 1px;
  margin: 8px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.dropdown-menu > li > a {
  display: block;
  padding: 3px 20px;
  clear: both;
  font-weight: normal;
  line-height: 1.42857143;
  color: #333333;
  white-space: nowrap;
}
.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
  text-decoration: none;
  color: #262626;
  background-color: #f5f5f5;
}
.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  background-color: #337ab7;
}
.dropdown-menu > .disabled > a,
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  color: #777777;
}
.dropdown-menu > .disabled > a:hover,
.dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  cursor: not-allowed;
}
.open > .dropdown-menu {
  display: block;
}
.open > a {
  outline: 0;
}
.dropdown-menu-right {
  left: auto;
  right: 0;
}
.dropdown-menu-left {
  left: 0;
  right: auto;
}
.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857143;
  color: #777777;
  white-space: nowrap;
}
.dropdown-backdrop {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  z-index: 990;
}
.pull-right > .dropdown-menu {
  right: 0;
  left: auto;
}
.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9;
  content: "";
}
.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px;
}
@media (min-width: 541px) {
  .navbar-right .dropdown-menu {
    left: auto;
    right: 0;
  }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto;
  }
}
.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  float: left;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover,
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus,
.btn-group > .btn:active,
.btn-group-vertical > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn.active {
  z-index: 2;
}
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px;
}
.btn-toolbar {
  margin-left: -5px;
}
.btn-toolbar .btn,
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
  float: left;
}
.btn-toolbar > .btn,
.btn-toolbar > .btn-group,
.btn-toolbar > .input-group {
  margin-left: 5px;
}
.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0;
}
.btn-group > .btn:first-child {
  margin-left: 0;
}
.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.btn-group > .btn-group {
  float: left;
}
.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0;
}
.btn-group > .btn + .dropdown-toggle {
  padding-left: 8px;
  padding-right: 8px;
}
.btn-group > .btn-lg + .dropdown-toggle {
  padding-left: 12px;
  padding-right: 12px;
}
.btn-group.open .dropdown-toggle {
  -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.btn-group.open .dropdown-toggle.btn-link {
  -webkit-box-shadow: none;
  box-shadow: none;
}
.btn .caret {
  margin-left: 0;
}
.btn-lg .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0;
}
.dropup .btn-lg .caret {
  border-width: 0 5px 5px;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%;
}
.btn-group-vertical > .btn-group > .btn {
  float: none;
}
.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0;
}
.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}
.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0;
}
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate;
}
.btn-group-justified > .btn,
.btn-group-justified > .btn-group {
  float: none;
  display: table-cell;
  width: 1%;
}
.btn-group-justified > .btn-group .btn {
  width: 100%;
}
.btn-group-justified > .btn-group .dropdown-menu {
  left: auto;
}
[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.input-group {
  position: relative;
  display: table;
  border-collapse: separate;
}
.input-group[class*="col-"] {
  float: none;
  padding-left: 0;
  padding-right: 0;
}
.input-group .form-control {
  position: relative;
  z-index: 2;
  float: left;
  width: 100%;
  margin-bottom: 0;
}
.input-group .form-control:focus {
  z-index: 3;
}
.input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 45px;
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
  border-radius: 3px;
}
select.input-group-lg > .form-control,
select.input-group-lg > .input-group-addon,
select.input-group-lg > .input-group-btn > .btn {
  height: 45px;
  line-height: 45px;
}
textarea.input-group-lg > .form-control,
textarea.input-group-lg > .input-group-addon,
textarea.input-group-lg > .input-group-btn > .btn,
select[multiple].input-group-lg > .form-control,
select[multiple].input-group-lg > .input-group-addon,
select[multiple].input-group-lg > .input-group-btn > .btn {
  height: auto;
}
.input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
}
select.input-group-sm > .form-control,
select.input-group-sm > .input-group-addon,
select.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  line-height: 30px;
}
textarea.input-group-sm > .form-control,
textarea.input-group-sm > .input-group-addon,
textarea.input-group-sm > .input-group-btn > .btn,
select[multiple].input-group-sm > .form-control,
select[multiple].input-group-sm > .input-group-addon,
select[multiple].input-group-sm > .input-group-btn > .btn {
  height: auto;
}
.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell;
}
.input-group-addon:not(:first-child):not(:last-child),
.input-group-btn:not(:first-child):not(:last-child),
.input-group .form-control:not(:first-child):not(:last-child) {
  border-radius: 0;
}
.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle;
}
.input-group-addon {
  padding: 6px 12px;
  font-size: 13px;
  font-weight: normal;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 2px;
}
.input-group-addon.input-sm {
  padding: 5px 10px;
  font-size: 12px;
  border-radius: 1px;
}
.input-group-addon.input-lg {
  padding: 10px 16px;
  font-size: 17px;
  border-radius: 3px;
}
.input-group-addon input[type="radio"],
.input-group-addon input[type="checkbox"] {
  margin-top: 0;
}
.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-top-right-radius: 0;
}
.input-group-addon:first-child {
  border-right: 0;
}
.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
.input-group-addon:last-child {
  border-left: 0;
}
.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap;
}
.input-group-btn > .btn {
  position: relative;
}
.input-group-btn > .btn + .btn {
  margin-left: -1px;
}
.input-group-btn > .btn:hover,
.input-group-btn > .btn:focus,
.input-group-btn > .btn:active {
  z-index: 2;
}
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group {
  margin-right: -1px;
}
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group {
  z-index: 2;
  margin-left: -1px;
}
.nav {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.nav > li {
  position: relative;
  display: block;
}
.nav > li > a {
  position: relative;
  display: block;
  padding: 10px 15px;
}
.nav > li > a:hover,
.nav > li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.nav > li.disabled > a {
  color: #777777;
}
.nav > li.disabled > a:hover,
.nav > li.disabled > a:focus {
  color: #777777;
  text-decoration: none;
  background-color: transparent;
  cursor: not-allowed;
}
.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {
  background-color: #eeeeee;
  border-color: #337ab7;
}
.nav .nav-divider {
  height: 1px;
  margin: 8px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}
.nav > li > a > img {
  max-width: none;
}
.nav-tabs {
  border-bottom: 1px solid #ddd;
}
.nav-tabs > li {
  float: left;
  margin-bottom: -1px;
}
.nav-tabs > li > a {
  margin-right: 2px;
  line-height: 1.42857143;
  border: 1px solid transparent;
  border-radius: 2px 2px 0 0;
}
.nav-tabs > li > a:hover {
  border-color: #eeeeee #eeeeee #ddd;
}
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus {
  color: #555555;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
  cursor: default;
}
.nav-tabs.nav-justified {
  width: 100%;
  border-bottom: 0;
}
.nav-tabs.nav-justified > li {
  float: none;
}
.nav-tabs.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}
.nav-tabs.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-tabs.nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs.nav-justified > li > a {
  margin-right: 0;
  border-radius: 2px;
}
.nav-tabs.nav-justified > .active > a,
.nav-tabs.nav-justified > .active > a:hover,
.nav-tabs.nav-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs.nav-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 2px 2px 0 0;
  }
  .nav-tabs.nav-justified > .active > a,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.nav-pills > li {
  float: left;
}
.nav-pills > li > a {
  border-radius: 2px;
}
.nav-pills > li + li {
  margin-left: 2px;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus {
  color: #fff;
  background-color: #337ab7;
}
.nav-stacked > li {
  float: none;
}
.nav-stacked > li + li {
  margin-top: 2px;
  margin-left: 0;
}
.nav-justified {
  width: 100%;
}
.nav-justified > li {
  float: none;
}
.nav-justified > li > a {
  text-align: center;
  margin-bottom: 5px;
}
.nav-justified > .dropdown .dropdown-menu {
  top: auto;
  left: auto;
}
@media (min-width: 768px) {
  .nav-justified > li {
    display: table-cell;
    width: 1%;
  }
  .nav-justified > li > a {
    margin-bottom: 0;
  }
}
.nav-tabs-justified {
  border-bottom: 0;
}
.nav-tabs-justified > li > a {
  margin-right: 0;
  border-radius: 2px;
}
.nav-tabs-justified > .active > a,
.nav-tabs-justified > .active > a:hover,
.nav-tabs-justified > .active > a:focus {
  border: 1px solid #ddd;
}
@media (min-width: 768px) {
  .nav-tabs-justified > li > a {
    border-bottom: 1px solid #ddd;
    border-radius: 2px 2px 0 0;
  }
  .nav-tabs-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus {
    border-bottom-color: #fff;
  }
}
.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.navbar {
  position: relative;
  min-height: 30px;
  margin-bottom: 18px;
  border: 1px solid transparent;
}
@media (min-width: 541px) {
  .navbar {
    border-radius: 2px;
  }
}
@media (min-width: 541px) {
  .navbar-header {
    float: left;
  }
}
.navbar-collapse {
  overflow-x: visible;
  padding-right: 0px;
  padding-left: 0px;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch;
}
.navbar-collapse.in {
  overflow-y: auto;
}
@media (min-width: 541px) {
  .navbar-collapse {
    width: auto;
    border-top: 0;
    box-shadow: none;
  }
  .navbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
  }
  .navbar-collapse.in {
    overflow-y: visible;
  }
  .navbar-fixed-top .navbar-collapse,
  .navbar-static-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    padding-left: 0;
    padding-right: 0;
  }
}
.navbar-fixed-top .navbar-collapse,
.navbar-fixed-bottom .navbar-collapse {
  max-height: 340px;
}
@media (max-device-width: 540px) and (orientation: landscape) {
  .navbar-fixed-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    max-height: 200px;
  }
}
.container > .navbar-header,
.container-fluid > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-collapse {
  margin-right: 0px;
  margin-left: 0px;
}
@media (min-width: 541px) {
  .container > .navbar-header,
  .container-fluid > .navbar-header,
  .container > .navbar-collapse,
  .container-fluid > .navbar-collapse {
    margin-right: 0;
    margin-left: 0;
  }
}
.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}
@media (min-width: 541px) {
  .navbar-static-top {
    border-radius: 0;
  }
}
.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}
@media (min-width: 541px) {
  .navbar-fixed-top,
  .navbar-fixed-bottom {
    border-radius: 0;
  }
}
.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px;
}
.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0;
}
.navbar-brand {
  float: left;
  padding: 6px 0px;
  font-size: 17px;
  line-height: 18px;
  height: 30px;
}
.navbar-brand:hover,
.navbar-brand:focus {
  text-decoration: none;
}
.navbar-brand > img {
  display: block;
}
@media (min-width: 541px) {
  .navbar > .container .navbar-brand,
  .navbar > .container-fluid .navbar-brand {
    margin-left: 0px;
  }
}
.navbar-toggle {
  position: relative;
  float: right;
  margin-right: 0px;
  padding: 9px 10px;
  margin-top: -2px;
  margin-bottom: -2px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 2px;
}
.navbar-toggle:focus {
  outline: 0;
}
.navbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}
.navbar-toggle .icon-bar + .icon-bar {
  margin-top: 4px;
}
@media (min-width: 541px) {
  .navbar-toggle {
    display: none;
  }
}
.navbar-nav {
  margin: 3px 0px;
}
.navbar-nav > li > a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 18px;
}
@media (max-width: 540px) {
  .navbar-nav .open .dropdown-menu {
    position: static;
    float: none;
    width: auto;
    margin-top: 0;
    background-color: transparent;
    border: 0;
    box-shadow: none;
  }
  .navbar-nav .open .dropdown-menu > li > a,
  .navbar-nav .open .dropdown-menu .dropdown-header {
    padding: 5px 15px 5px 25px;
  }
  .navbar-nav .open .dropdown-menu > li > a {
    line-height: 18px;
  }
  .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-nav .open .dropdown-menu > li > a:focus {
    background-image: none;
  }
}
@media (min-width: 541px) {
  .navbar-nav {
    float: left;
    margin: 0;
  }
  .navbar-nav > li {
    float: left;
  }
  .navbar-nav > li > a {
    padding-top: 6px;
    padding-bottom: 6px;
  }
}
.navbar-form {
  margin-left: 0px;
  margin-right: 0px;
  padding: 10px 0px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: -1px;
  margin-bottom: -1px;
}
@media (min-width: 768px) {
  .navbar-form .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .navbar-form .form-control-static {
    display: inline-block;
  }
  .navbar-form .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .navbar-form .input-group .input-group-addon,
  .navbar-form .input-group .input-group-btn,
  .navbar-form .input-group .form-control {
    width: auto;
  }
  .navbar-form .input-group > .form-control {
    width: 100%;
  }
  .navbar-form .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio,
  .navbar-form .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .navbar-form .radio label,
  .navbar-form .checkbox label {
    padding-left: 0;
  }
  .navbar-form .radio input[type="radio"],
  .navbar-form .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .navbar-form .has-feedback .form-control-feedback {
    top: 0;
  }
}
@media (max-width: 540px) {
  .navbar-form .form-group {
    margin-bottom: 5px;
  }
  .navbar-form .form-group:last-child {
    margin-bottom: 0;
  }
}
@media (min-width: 541px) {
  .navbar-form {
    width: auto;
    border: 0;
    margin-left: 0;
    margin-right: 0;
    padding-top: 0;
    padding-bottom: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}
.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.navbar-btn {
  margin-top: -1px;
  margin-bottom: -1px;
}
.navbar-btn.btn-sm {
  margin-top: 0px;
  margin-bottom: 0px;
}
.navbar-btn.btn-xs {
  margin-top: 4px;
  margin-bottom: 4px;
}
.navbar-text {
  margin-top: 6px;
  margin-bottom: 6px;
}
@media (min-width: 541px) {
  .navbar-text {
    float: left;
    margin-left: 0px;
    margin-right: 0px;
  }
}
@media (min-width: 541px) {
  .navbar-left {
    float: left !important;
    float: left;
  }
  .navbar-right {
    float: right !important;
    float: right;
    margin-right: 0px;
  }
  .navbar-right ~ .navbar-right {
    margin-right: 0;
  }
}
.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7;
}
.navbar-default .navbar-brand {
  color: #777;
}
.navbar-default .navbar-brand:hover,
.navbar-default .navbar-brand:focus {
  color: #5e5e5e;
  background-color: transparent;
}
.navbar-default .navbar-text {
  color: #777;
}
.navbar-default .navbar-nav > li > a {
  color: #777;
}
.navbar-default .navbar-nav > li > a:hover,
.navbar-default .navbar-nav > li > a:focus {
  color: #333;
  background-color: transparent;
}
.navbar-default .navbar-nav > .active > a,
.navbar-default .navbar-nav > .active > a:hover,
.navbar-default .navbar-nav > .active > a:focus {
  color: #555;
  background-color: #e7e7e7;
}
.navbar-default .navbar-nav > .disabled > a,
.navbar-default .navbar-nav > .disabled > a:hover,
.navbar-default .navbar-nav > .disabled > a:focus {
  color: #ccc;
  background-color: transparent;
}
.navbar-default .navbar-toggle {
  border-color: #ddd;
}
.navbar-default .navbar-toggle:hover,
.navbar-default .navbar-toggle:focus {
  background-color: #ddd;
}
.navbar-default .navbar-toggle .icon-bar {
  background-color: #888;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
  border-color: #e7e7e7;
}
.navbar-default .navbar-nav > .open > a,
.navbar-default .navbar-nav > .open > a:hover,
.navbar-default .navbar-nav > .open > a:focus {
  background-color: #e7e7e7;
  color: #555;
}
@media (max-width: 540px) {
  .navbar-default .navbar-nav .open .dropdown-menu > li > a {
    color: #777;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #333;
    background-color: transparent;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #555;
    background-color: #e7e7e7;
  }
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #ccc;
    background-color: transparent;
  }
}
.navbar-default .navbar-link {
  color: #777;
}
.navbar-default .navbar-link:hover {
  color: #333;
}
.navbar-default .btn-link {
  color: #777;
}
.navbar-default .btn-link:hover,
.navbar-default .btn-link:focus {
  color: #333;
}
.navbar-default .btn-link[disabled]:hover,
fieldset[disabled] .navbar-default .btn-link:hover,
.navbar-default .btn-link[disabled]:focus,
fieldset[disabled] .navbar-default .btn-link:focus {
  color: #ccc;
}
.navbar-inverse {
  background-color: #222;
  border-color: #080808;
}
.navbar-inverse .navbar-brand {
  color: #9d9d9d;
}
.navbar-inverse .navbar-brand:hover,
.navbar-inverse .navbar-brand:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-text {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a {
  color: #9d9d9d;
}
.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:focus {
  color: #fff;
  background-color: transparent;
}
.navbar-inverse .navbar-nav > .active > a,
.navbar-inverse .navbar-nav > .active > a:hover,
.navbar-inverse .navbar-nav > .active > a:focus {
  color: #fff;
  background-color: #080808;
}
.navbar-inverse .navbar-nav > .disabled > a,
.navbar-inverse .navbar-nav > .disabled > a:hover,
.navbar-inverse .navbar-nav > .disabled > a:focus {
  color: #444;
  background-color: transparent;
}
.navbar-inverse .navbar-toggle {
  border-color: #333;
}
.navbar-inverse .navbar-toggle:hover,
.navbar-inverse .navbar-toggle:focus {
  background-color: #333;
}
.navbar-inverse .navbar-toggle .icon-bar {
  background-color: #fff;
}
.navbar-inverse .navbar-collapse,
.navbar-inverse .navbar-form {
  border-color: #101010;
}
.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:hover,
.navbar-inverse .navbar-nav > .open > a:focus {
  background-color: #080808;
  color: #fff;
}
@media (max-width: 540px) {
  .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
    border-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
    color: #9d9d9d;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
    color: #fff;
    background-color: transparent;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #fff;
    background-color: #080808;
  }
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover,
  .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
    color: #444;
    background-color: transparent;
  }
}
.navbar-inverse .navbar-link {
  color: #9d9d9d;
}
.navbar-inverse .navbar-link:hover {
  color: #fff;
}
.navbar-inverse .btn-link {
  color: #9d9d9d;
}
.navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link:focus {
  color: #fff;
}
.navbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .navbar-inverse .btn-link:hover,
.navbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .navbar-inverse .btn-link:focus {
  color: #444;
}
.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 18px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 2px;
}
.breadcrumb > li {
  display: inline-block;
}
.breadcrumb > li + li:before {
  content: "/\00a0";
  padding: 0 5px;
  color: #5e5e5e;
}
.breadcrumb > .active {
  color: #777777;
}
.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 18px 0;
  border-radius: 2px;
}
.pagination > li {
  display: inline;
}
.pagination > li > a,
.pagination > li > span {
  position: relative;
  float: left;
  padding: 6px 12px;
  line-height: 1.42857143;
  text-decoration: none;
  color: #337ab7;
  background-color: #fff;
  border: 1px solid #ddd;
  margin-left: -1px;
}
.pagination > li:first-child > a,
.pagination > li:first-child > span {
  margin-left: 0;
  border-bottom-left-radius: 2px;
  border-top-left-radius: 2px;
}
.pagination > li:last-child > a,
.pagination > li:last-child > span {
  border-bottom-right-radius: 2px;
  border-top-right-radius: 2px;
}
.pagination > li > a:hover,
.pagination > li > span:hover,
.pagination > li > a:focus,
.pagination > li > span:focus {
  z-index: 2;
  color: #23527c;
  background-color: #eeeeee;
  border-color: #ddd;
}
.pagination > .active > a,
.pagination > .active > span,
.pagination > .active > a:hover,
.pagination > .active > span:hover,
.pagination > .active > a:focus,
.pagination > .active > span:focus {
  z-index: 3;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
  cursor: default;
}
.pagination > .disabled > span,
.pagination > .disabled > span:hover,
.pagination > .disabled > span:focus,
.pagination > .disabled > a,
.pagination > .disabled > a:hover,
.pagination > .disabled > a:focus {
  color: #777777;
  background-color: #fff;
  border-color: #ddd;
  cursor: not-allowed;
}
.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 17px;
  line-height: 1.3333333;
}
.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px;
}
.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px;
}
.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
}
.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-bottom-left-radius: 1px;
  border-top-left-radius: 1px;
}
.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-bottom-right-radius: 1px;
  border-top-right-radius: 1px;
}
.pager {
  padding-left: 0;
  margin: 18px 0;
  list-style: none;
  text-align: center;
}
.pager li {
  display: inline;
}
.pager li > a,
.pager li > span {
  display: inline-block;
  padding: 5px 14px;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 15px;
}
.pager li > a:hover,
.pager li > a:focus {
  text-decoration: none;
  background-color: #eeeeee;
}
.pager .next > a,
.pager .next > span {
  float: right;
}
.pager .previous > a,
.pager .previous > span {
  float: left;
}
.pager .disabled > a,
.pager .disabled > a:hover,
.pager .disabled > a:focus,
.pager .disabled > span {
  color: #777777;
  background-color: #fff;
  cursor: not-allowed;
}
.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em;
}
a.label:hover,
a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.label:empty {
  display: none;
}
.btn .label {
  position: relative;
  top: -1px;
}
.label-default {
  background-color: #777777;
}
.label-default[href]:hover,
.label-default[href]:focus {
  background-color: #5e5e5e;
}
.label-primary {
  background-color: #337ab7;
}
.label-primary[href]:hover,
.label-primary[href]:focus {
  background-color: #286090;
}
.label-success {
  background-color: #5cb85c;
}
.label-success[href]:hover,
.label-success[href]:focus {
  background-color: #449d44;
}
.label-info {
  background-color: #5bc0de;
}
.label-info[href]:hover,
.label-info[href]:focus {
  background-color: #31b0d5;
}
.label-warning {
  background-color: #f0ad4e;
}
.label-warning[href]:hover,
.label-warning[href]:focus {
  background-color: #ec971f;
}
.label-danger {
  background-color: #d9534f;
}
.label-danger[href]:hover,
.label-danger[href]:focus {
  background-color: #c9302c;
}
.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  color: #fff;
  line-height: 1;
  vertical-align: middle;
  white-space: nowrap;
  text-align: center;
  background-color: #777777;
  border-radius: 10px;
}
.badge:empty {
  display: none;
}
.btn .badge {
  position: relative;
  top: -1px;
}
.btn-xs .badge,
.btn-group-xs > .btn .badge {
  top: 0;
  padding: 1px 5px;
}
a.badge:hover,
a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge {
  color: #337ab7;
  background-color: #fff;
}
.list-group-item > .badge {
  float: right;
}
.list-group-item > .badge + .badge {
  margin-right: 5px;
}
.nav-pills > li > a > .badge {
  margin-left: 3px;
}
.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee;
}
.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}
.jumbotron p {
  margin-bottom: 15px;
  font-size: 20px;
  font-weight: 200;
}
.jumbotron > hr {
  border-top-color: #d5d5d5;
}
.container .jumbotron,
.container-fluid .jumbotron {
  border-radius: 3px;
  padding-left: 0px;
  padding-right: 0px;
}
.jumbotron .container {
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .jumbotron {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  .container .jumbotron,
  .container-fluid .jumbotron {
    padding-left: 60px;
    padding-right: 60px;
  }
  .jumbotron h1,
  .jumbotron .h1 {
    font-size: 59px;
  }
}
.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 18px;
  line-height: 1.42857143;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 2px;
  -webkit-transition: border 0.2s ease-in-out;
  -o-transition: border 0.2s ease-in-out;
  transition: border 0.2s ease-in-out;
}
.thumbnail > img,
.thumbnail a > img {
  margin-left: auto;
  margin-right: auto;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #337ab7;
}
.thumbnail .caption {
  padding: 9px;
  color: #000;
}
.alert {
  padding: 15px;
  margin-bottom: 18px;
  border: 1px solid transparent;
  border-radius: 2px;
}
.alert h4 {
  margin-top: 0;
  color: inherit;
}
.alert .alert-link {
  font-weight: bold;
}
.alert > p,
.alert > ul {
  margin-bottom: 0;
}
.alert > p + p {
  margin-top: 5px;
}
.alert-dismissable,
.alert-dismissible {
  padding-right: 35px;
}
.alert-dismissable .close,
.alert-dismissible .close {
  position: relative;
  top: -2px;
  right: -21px;
  color: inherit;
}
.alert-success {
  background-color: #dff0d8;
  border-color: #d6e9c6;
  color: #3c763d;
}
.alert-success hr {
  border-top-color: #c9e2b3;
}
.alert-success .alert-link {
  color: #2b542c;
}
.alert-info {
  background-color: #d9edf7;
  border-color: #bce8f1;
  color: #31708f;
}
.alert-info hr {
  border-top-color: #a6e1ec;
}
.alert-info .alert-link {
  color: #245269;
}
.alert-warning {
  background-color: #fcf8e3;
  border-color: #faebcc;
  color: #8a6d3b;
}
.alert-warning hr {
  border-top-color: #f7e1b5;
}
.alert-warning .alert-link {
  color: #66512c;
}
.alert-danger {
  background-color: #f2dede;
  border-color: #ebccd1;
  color: #a94442;
}
.alert-danger hr {
  border-top-color: #e4b9c0;
}
.alert-danger .alert-link {
  color: #843534;
}
@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  overflow: hidden;
  height: 18px;
  margin-bottom: 18px;
  background-color: #f5f5f5;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}
.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 18px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  -webkit-transition: width 0.6s ease;
  -o-transition: width 0.6s ease;
  transition: width 0.6s ease;
}
.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px;
}
.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  -o-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite;
}
.progress-bar-success {
  background-color: #5cb85c;
}
.progress-striped .progress-bar-success {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-info {
  background-color: #5bc0de;
}
.progress-striped .progress-bar-info {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-warning {
  background-color: #f0ad4e;
}
.progress-striped .progress-bar-warning {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.progress-bar-danger {
  background-color: #d9534f;
}
.progress-striped .progress-bar-danger {
  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
}
.media {
  margin-top: 15px;
}
.media:first-child {
  margin-top: 0;
}
.media,
.media-body {
  zoom: 1;
  overflow: hidden;
}
.media-body {
  width: 10000px;
}
.media-object {
  display: block;
}
.media-object.img-thumbnail {
  max-width: none;
}
.media-right,
.media > .pull-right {
  padding-left: 10px;
}
.media-left,
.media > .pull-left {
  padding-right: 10px;
}
.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top;
}
.media-middle {
  vertical-align: middle;
}
.media-bottom {
  vertical-align: bottom;
}
.media-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.media-list {
  padding-left: 0;
  list-style: none;
}
.list-group {
  margin-bottom: 20px;
  padding-left: 0;
}
.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd;
}
.list-group-item:first-child {
  border-top-right-radius: 2px;
  border-top-left-radius: 2px;
}
.list-group-item:last-child {
  margin-bottom: 0;
  border-bottom-right-radius: 2px;
  border-bottom-left-radius: 2px;
}
a.list-group-item,
button.list-group-item {
  color: #555;
}
a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
  color: #333;
}
a.list-group-item:hover,
button.list-group-item:hover,
a.list-group-item:focus,
button.list-group-item:focus {
  text-decoration: none;
  color: #555;
  background-color: #f5f5f5;
}
button.list-group-item {
  width: 100%;
  text-align: left;
}
.list-group-item.disabled,
.list-group-item.disabled:hover,
.list-group-item.disabled:focus {
  background-color: #eeeeee;
  color: #777777;
  cursor: not-allowed;
}
.list-group-item.disabled .list-group-item-heading,
.list-group-item.disabled:hover .list-group-item-heading,
.list-group-item.disabled:focus .list-group-item-heading {
  color: inherit;
}
.list-group-item.disabled .list-group-item-text,
.list-group-item.disabled:hover .list-group-item-text,
.list-group-item.disabled:focus .list-group-item-text {
  color: #777777;
}
.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  z-index: 2;
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.list-group-item.active .list-group-item-heading,
.list-group-item.active:hover .list-group-item-heading,
.list-group-item.active:focus .list-group-item-heading,
.list-group-item.active .list-group-item-heading > small,
.list-group-item.active:hover .list-group-item-heading > small,
.list-group-item.active:focus .list-group-item-heading > small,
.list-group-item.active .list-group-item-heading > .small,
.list-group-item.active:hover .list-group-item-heading > .small,
.list-group-item.active:focus .list-group-item-heading > .small {
  color: inherit;
}
.list-group-item.active .list-group-item-text,
.list-group-item.active:hover .list-group-item-text,
.list-group-item.active:focus .list-group-item-text {
  color: #c7ddef;
}
.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8;
}
a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d;
}
a.list-group-item-success .list-group-item-heading,
button.list-group-item-success .list-group-item-heading {
  color: inherit;
}
a.list-group-item-success:hover,
button.list-group-item-success:hover,
a.list-group-item-success:focus,
button.list-group-item-success:focus {
  color: #3c763d;
  background-color: #d0e9c6;
}
a.list-group-item-success.active,
button.list-group-item-success.active,
a.list-group-item-success.active:hover,
button.list-group-item-success.active:hover,
a.list-group-item-success.active:focus,
button.list-group-item-success.active:focus {
  color: #fff;
  background-color: #3c763d;
  border-color: #3c763d;
}
.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7;
}
a.list-group-item-info,
button.list-group-item-info {
  color: #31708f;
}
a.list-group-item-info .list-group-item-heading,
button.list-group-item-info .list-group-item-heading {
  color: inherit;
}
a.list-group-item-info:hover,
button.list-group-item-info:hover,
a.list-group-item-info:focus,
button.list-group-item-info:focus {
  color: #31708f;
  background-color: #c4e3f3;
}
a.list-group-item-info.active,
button.list-group-item-info.active,
a.list-group-item-info.active:hover,
button.list-group-item-info.active:hover,
a.list-group-item-info.active:focus,
button.list-group-item-info.active:focus {
  color: #fff;
  background-color: #31708f;
  border-color: #31708f;
}
.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
}
a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b;
}
a.list-group-item-warning .list-group-item-heading,
button.list-group-item-warning .list-group-item-heading {
  color: inherit;
}
a.list-group-item-warning:hover,
button.list-group-item-warning:hover,
a.list-group-item-warning:focus,
button.list-group-item-warning:focus {
  color: #8a6d3b;
  background-color: #faf2cc;
}
a.list-group-item-warning.active,
button.list-group-item-warning.active,
a.list-group-item-warning.active:hover,
button.list-group-item-warning.active:hover,
a.list-group-item-warning.active:focus,
button.list-group-item-warning.active:focus {
  color: #fff;
  background-color: #8a6d3b;
  border-color: #8a6d3b;
}
.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede;
}
a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442;
}
a.list-group-item-danger .list-group-item-heading,
button.list-group-item-danger .list-group-item-heading {
  color: inherit;
}
a.list-group-item-danger:hover,
button.list-group-item-danger:hover,
a.list-group-item-danger:focus,
button.list-group-item-danger:focus {
  color: #a94442;
  background-color: #ebcccc;
}
a.list-group-item-danger.active,
button.list-group-item-danger.active,
a.list-group-item-danger.active:hover,
button.list-group-item-danger.active:hover,
a.list-group-item-danger.active:focus,
button.list-group-item-danger.active:focus {
  color: #fff;
  background-color: #a94442;
  border-color: #a94442;
}
.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px;
}
.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3;
}
.panel {
  margin-bottom: 18px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 2px;
  -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
}
.panel-body {
  padding: 15px;
}
.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-right-radius: 1px;
  border-top-left-radius: 1px;
}
.panel-heading > .dropdown .dropdown-toggle {
  color: inherit;
}
.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 15px;
  color: inherit;
}
.panel-title > a,
.panel-title > small,
.panel-title > .small,
.panel-title > small > a,
.panel-title > .small > a {
  color: inherit;
}
.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
}
.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0;
}
.panel > .list-group .list-group-item,
.panel > .panel-collapse > .list-group .list-group-item {
  border-width: 1px 0;
  border-radius: 0;
}
.panel > .list-group:first-child .list-group-item:first-child,
.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
  border-top: 0;
  border-top-right-radius: 1px;
  border-top-left-radius: 1px;
}
.panel > .list-group:last-child .list-group-item:last-child,
.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
  border-bottom: 0;
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
}
.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-right-radius: 0;
  border-top-left-radius: 0;
}
.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0;
}
.list-group + .panel-footer {
  border-top-width: 0;
}
.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0;
}
.panel > .table caption,
.panel > .table-responsive > .table caption,
.panel > .panel-collapse > .table caption {
  padding-left: 15px;
  padding-right: 15px;
}
.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-right-radius: 1px;
  border-top-left-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
  border-top-left-radius: 1px;
  border-top-right-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
  border-top-left-radius: 1px;
}
.panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
.panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
  border-top-right-radius: 1px;
}
.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 1px;
  border-bottom-left-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
  border-bottom-left-radius: 1px;
  border-bottom-right-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
  border-bottom-left-radius: 1px;
}
.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
  border-bottom-right-radius: 1px;
}
.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd;
}
.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0;
}
.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0;
}
.panel > .table-bordered > thead > tr > th:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
.panel > .table-bordered > tbody > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
.panel > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
.panel > .table-bordered > thead > tr > td:first-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
.panel > .table-bordered > tbody > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
.panel > .table-bordered > tfoot > tr > td:first-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
  border-left: 0;
}
.panel > .table-bordered > thead > tr > th:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
.panel > .table-bordered > tbody > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
.panel > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
.panel > .table-bordered > thead > tr > td:last-child,
.panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
.panel > .table-bordered > tbody > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
.panel > .table-bordered > tfoot > tr > td:last-child,
.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
  border-right: 0;
}
.panel > .table-bordered > thead > tr:first-child > td,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
.panel > .table-bordered > tbody > tr:first-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
.panel > .table-bordered > thead > tr:first-child > th,
.panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
.panel > .table-bordered > tbody > tr:first-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
  border-bottom: 0;
}
.panel > .table-bordered > tbody > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
.panel > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
.panel > .table-bordered > tbody > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
.panel > .table-bordered > tfoot > tr:last-child > th,
.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
  border-bottom: 0;
}
.panel > .table-responsive {
  border: 0;
  margin-bottom: 0;
}
.panel-group {
  margin-bottom: 18px;
}
.panel-group .panel {
  margin-bottom: 0;
  border-radius: 2px;
}
.panel-group .panel + .panel {
  margin-top: 5px;
}
.panel-group .panel-heading {
  border-bottom: 0;
}
.panel-group .panel-heading + .panel-collapse > .panel-body,
.panel-group .panel-heading + .panel-collapse > .list-group {
  border-top: 1px solid #ddd;
}
.panel-group .panel-footer {
  border-top: 0;
}
.panel-group .panel-footer + .panel-collapse .panel-body {
  border-bottom: 1px solid #ddd;
}
.panel-default {
  border-color: #ddd;
}
.panel-default > .panel-heading {
  color: #333333;
  background-color: #f5f5f5;
  border-color: #ddd;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ddd;
}
.panel-default > .panel-heading .badge {
  color: #f5f5f5;
  background-color: #333333;
}
.panel-default > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ddd;
}
.panel-primary {
  border-color: #337ab7;
}
.panel-primary > .panel-heading {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.panel-primary > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #337ab7;
}
.panel-primary > .panel-heading .badge {
  color: #337ab7;
  background-color: #fff;
}
.panel-primary > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #337ab7;
}
.panel-success {
  border-color: #d6e9c6;
}
.panel-success > .panel-heading {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.panel-success > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #d6e9c6;
}
.panel-success > .panel-heading .badge {
  color: #dff0d8;
  background-color: #3c763d;
}
.panel-success > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #d6e9c6;
}
.panel-info {
  border-color: #bce8f1;
}
.panel-info > .panel-heading {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.panel-info > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #bce8f1;
}
.panel-info > .panel-heading .badge {
  color: #d9edf7;
  background-color: #31708f;
}
.panel-info > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #bce8f1;
}
.panel-warning {
  border-color: #faebcc;
}
.panel-warning > .panel-heading {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc;
}
.panel-warning > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #faebcc;
}
.panel-warning > .panel-heading .badge {
  color: #fcf8e3;
  background-color: #8a6d3b;
}
.panel-warning > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #faebcc;
}
.panel-danger {
  border-color: #ebccd1;
}
.panel-danger > .panel-heading {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.panel-danger > .panel-heading + .panel-collapse > .panel-body {
  border-top-color: #ebccd1;
}
.panel-danger > .panel-heading .badge {
  color: #f2dede;
  background-color: #a94442;
}
.panel-danger > .panel-footer + .panel-collapse > .panel-body {
  border-bottom-color: #ebccd1;
}
.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden;
}
.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  border: 0;
}
.embed-responsive-16by9 {
  padding-bottom: 56.25%;
}
.embed-responsive-4by3 {
  padding-bottom: 75%;
}
.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
}
.well blockquote {
  border-color: #ddd;
  border-color: rgba(0, 0, 0, 0.15);
}
.well-lg {
  padding: 24px;
  border-radius: 3px;
}
.well-sm {
  padding: 9px;
  border-radius: 1px;
}
.close {
  float: right;
  font-size: 19.5px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.2;
  filter: alpha(opacity=20);
}
.close:hover,
.close:focus {
  color: #000;
  text-decoration: none;
  cursor: pointer;
  opacity: 0.5;
  filter: alpha(opacity=50);
}
button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
}
.modal-open {
  overflow: hidden;
}
.modal {
  display: none;
  overflow: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  -webkit-overflow-scrolling: touch;
  outline: 0;
}
.modal.fade .modal-dialog {
  -webkit-transform: translate(0, -25%);
  -ms-transform: translate(0, -25%);
  -o-transform: translate(0, -25%);
  transform: translate(0, -25%);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  -moz-transition: -moz-transform 0.3s ease-out;
  -o-transition: -o-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}
.modal.in .modal-dialog {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}
.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}
.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px;
}
.modal-content {
  position: relative;
  background-color: #fff;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 3px;
  -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  background-clip: padding-box;
  outline: 0;
}
.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
  filter: alpha(opacity=0);
}
.modal-backdrop.in {
  opacity: 0.5;
  filter: alpha(opacity=50);
}
.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5;
}
.modal-header .close {
  margin-top: -2px;
}
.modal-title {
  margin: 0;
  line-height: 1.42857143;
}
.modal-body {
  position: relative;
  padding: 15px;
}
.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5;
}
.modal-footer .btn + .btn {
  margin-left: 5px;
  margin-bottom: 0;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
.modal-footer .btn-block + .btn-block {
  margin-left: 0;
}
.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}
@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto;
  }
  .modal-content {
    -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
  }
  .modal-sm {
    width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg {
    width: 900px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857143;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 12px;
  opacity: 0;
  filter: alpha(opacity=0);
}
.tooltip.in {
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.tooltip.top {
  margin-top: -3px;
  padding: 5px 0;
}
.tooltip.right {
  margin-left: 3px;
  padding: 0 5px;
}
.tooltip.bottom {
  margin-top: 3px;
  padding: 5px 0;
}
.tooltip.left {
  margin-left: -3px;
  padding: 0 5px;
}
.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 2px;
}
.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.tooltip.top .tooltip-arrow {
  bottom: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-left .tooltip-arrow {
  bottom: 0;
  right: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.top-right .tooltip-arrow {
  bottom: 0;
  left: 5px;
  margin-bottom: -5px;
  border-width: 5px 5px 0;
  border-top-color: #000;
}
.tooltip.right .tooltip-arrow {
  top: 50%;
  left: 0;
  margin-top: -5px;
  border-width: 5px 5px 5px 0;
  border-right-color: #000;
}
.tooltip.left .tooltip-arrow {
  top: 50%;
  right: 0;
  margin-top: -5px;
  border-width: 5px 0 5px 5px;
  border-left-color: #000;
}
.tooltip.bottom .tooltip-arrow {
  top: 0;
  left: 50%;
  margin-left: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-left .tooltip-arrow {
  top: 0;
  right: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.tooltip.bottom-right .tooltip-arrow {
  top: 0;
  left: 5px;
  margin-top: -5px;
  border-width: 0 5px 5px;
  border-bottom-color: #000;
}
.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  letter-spacing: normal;
  line-break: auto;
  line-height: 1.42857143;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  white-space: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  font-size: 13px;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 3px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
.popover.top {
  margin-top: -10px;
}
.popover.right {
  margin-left: 10px;
}
.popover.bottom {
  margin-top: 10px;
}
.popover.left {
  margin-left: -10px;
}
.popover-title {
  margin: 0;
  padding: 8px 14px;
  font-size: 13px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 2px 2px 0 0;
}
.popover-content {
  padding: 9px 14px;
}
.popover > .arrow,
.popover > .arrow:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid;
}
.popover > .arrow {
  border-width: 11px;
}
.popover > .arrow:after {
  border-width: 10px;
  content: "";
}
.popover.top > .arrow {
  left: 50%;
  margin-left: -11px;
  border-bottom-width: 0;
  border-top-color: #999999;
  border-top-color: rgba(0, 0, 0, 0.25);
  bottom: -11px;
}
.popover.top > .arrow:after {
  content: " ";
  bottom: 1px;
  margin-left: -10px;
  border-bottom-width: 0;
  border-top-color: #fff;
}
.popover.right > .arrow {
  top: 50%;
  left: -11px;
  margin-top: -11px;
  border-left-width: 0;
  border-right-color: #999999;
  border-right-color: rgba(0, 0, 0, 0.25);
}
.popover.right > .arrow:after {
  content: " ";
  left: 1px;
  bottom: -10px;
  border-left-width: 0;
  border-right-color: #fff;
}
.popover.bottom > .arrow {
  left: 50%;
  margin-left: -11px;
  border-top-width: 0;
  border-bottom-color: #999999;
  border-bottom-color: rgba(0, 0, 0, 0.25);
  top: -11px;
}
.popover.bottom > .arrow:after {
  content: " ";
  top: 1px;
  margin-left: -10px;
  border-top-width: 0;
  border-bottom-color: #fff;
}
.popover.left > .arrow {
  top: 50%;
  right: -11px;
  margin-top: -11px;
  border-right-width: 0;
  border-left-color: #999999;
  border-left-color: rgba(0, 0, 0, 0.25);
}
.popover.left > .arrow:after {
  content: " ";
  right: 1px;
  border-right-width: 0;
  border-left-color: #fff;
  bottom: -10px;
}
.carousel {
  position: relative;
}
.carousel-inner {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.carousel-inner > .item {
  display: none;
  position: relative;
  -webkit-transition: 0.6s ease-in-out left;
  -o-transition: 0.6s ease-in-out left;
  transition: 0.6s ease-in-out left;
}
.carousel-inner > .item > img,
.carousel-inner > .item > a > img {
  line-height: 1;
}
@media all and (transform-3d), (-webkit-transform-3d) {
  .carousel-inner > .item {
    -webkit-transition: -webkit-transform 0.6s ease-in-out;
    -moz-transition: -moz-transform 0.6s ease-in-out;
    -o-transition: -o-transform 0.6s ease-in-out;
    transition: transform 0.6s ease-in-out;
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-perspective: 1000px;
    -moz-perspective: 1000px;
    perspective: 1000px;
  }
  .carousel-inner > .item.next,
  .carousel-inner > .item.active.right {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.prev,
  .carousel-inner > .item.active.left {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    left: 0;
  }
  .carousel-inner > .item.next.left,
  .carousel-inner > .item.prev.right,
  .carousel-inner > .item.active {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    left: 0;
  }
}
.carousel-inner > .active,
.carousel-inner > .next,
.carousel-inner > .prev {
  display: block;
}
.carousel-inner > .active {
  left: 0;
}
.carousel-inner > .next,
.carousel-inner > .prev {
  position: absolute;
  top: 0;
  width: 100%;
}
.carousel-inner > .next {
  left: 100%;
}
.carousel-inner > .prev {
  left: -100%;
}
.carousel-inner > .next.left,
.carousel-inner > .prev.right {
  left: 0;
}
.carousel-inner > .active.left {
  left: -100%;
}
.carousel-inner > .active.right {
  left: 100%;
}
.carousel-control {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 15%;
  opacity: 0.5;
  filter: alpha(opacity=50);
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  background-color: rgba(0, 0, 0, 0);
}
.carousel-control.left {
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
}
.carousel-control.right {
  left: auto;
  right: 0;
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
}
.carousel-control:hover,
.carousel-control:focus {
  outline: 0;
  color: #fff;
  text-decoration: none;
  opacity: 0.9;
  filter: alpha(opacity=90);
}
.carousel-control .icon-prev,
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-left,
.carousel-control .glyphicon-chevron-right {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  z-index: 5;
  display: inline-block;
}
.carousel-control .icon-prev,
.carousel-control .glyphicon-chevron-left {
  left: 50%;
  margin-left: -10px;
}
.carousel-control .icon-next,
.carousel-control .glyphicon-chevron-right {
  right: 50%;
  margin-right: -10px;
}
.carousel-control .icon-prev,
.carousel-control .icon-next {
  width: 20px;
  height: 20px;
  line-height: 1;
  font-family: serif;
}
.carousel-control .icon-prev:before {
  content: '\2039';
}
.carousel-control .icon-next:before {
  content: '\203a';
}
.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  margin-left: -30%;
  padding-left: 0;
  list-style: none;
  text-align: center;
}
.carousel-indicators li {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 1px;
  text-indent: -999px;
  border: 1px solid #fff;
  border-radius: 10px;
  cursor: pointer;
  background-color: #000 \9;
  background-color: rgba(0, 0, 0, 0);
}
.carousel-indicators .active {
  margin: 0;
  width: 12px;
  height: 12px;
  background-color: #fff;
}
.carousel-caption {
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: 20px;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
}
.carousel-caption .btn {
  text-shadow: none;
}
@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px;
  }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px;
  }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px;
  }
  .carousel-caption {
    left: 20%;
    right: 20%;
    padding-bottom: 30px;
  }
  .carousel-indicators {
    bottom: 20px;
  }
}
.clearfix:before,
.clearfix:after,
.dl-horizontal dd:before,
.dl-horizontal dd:after,
.container:before,
.container:after,
.container-fluid:before,
.container-fluid:after,
.row:before,
.row:after,
.form-horizontal .form-group:before,
.form-horizontal .form-group:after,
.btn-toolbar:before,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:before,
.btn-group-vertical > .btn-group:after,
.nav:before,
.nav:after,
.navbar:before,
.navbar:after,
.navbar-header:before,
.navbar-header:after,
.navbar-collapse:before,
.navbar-collapse:after,
.pager:before,
.pager:after,
.panel-body:before,
.panel-body:after,
.modal-header:before,
.modal-header:after,
.modal-footer:before,
.modal-footer:after,
.item_buttons:before,
.item_buttons:after {
  content: " ";
  display: table;
}
.clearfix:after,
.dl-horizontal dd:after,
.container:after,
.container-fluid:after,
.row:after,
.form-horizontal .form-group:after,
.btn-toolbar:after,
.btn-group-vertical > .btn-group:after,
.nav:after,
.navbar:after,
.navbar-header:after,
.navbar-collapse:after,
.pager:after,
.panel-body:after,
.modal-header:after,
.modal-footer:after,
.item_buttons:after {
  clear: both;
}
.center-block {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.pull-right {
  float: right !important;
}
.pull-left {
  float: left !important;
}
.hide {
  display: none !important;
}
.show {
  display: block !important;
}
.invisible {
  visibility: hidden;
}
.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.hidden {
  display: none !important;
}
.affix {
  position: fixed;
}
@-ms-viewport {
  width: device-width;
}
.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}
.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important;
}
@media (max-width: 767px) {
  .visible-xs {
    display: block !important;
  }
  table.visible-xs {
    display: table !important;
  }
  tr.visible-xs {
    display: table-row !important;
  }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important;
  }
}
@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important;
  }
  table.visible-sm {
    display: table !important;
  }
  tr.visible-sm {
    display: table-row !important;
  }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important;
  }
  table.visible-md {
    display: table !important;
  }
  tr.visible-md {
    display: table-row !important;
  }
  th.visible-md,
  td.visible-md {
    display: table-cell !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg {
    display: block !important;
  }
  table.visible-lg {
    display: table !important;
  }
  tr.visible-lg {
    display: table-row !important;
  }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important;
  }
}
@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important;
  }
}
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
}
.visible-print {
  display: none !important;
}
@media print {
  .visible-print {
    display: block !important;
  }
  table.visible-print {
    display: table !important;
  }
  tr.visible-print {
    display: table-row !important;
  }
  th.visible-print,
  td.visible-print {
    display: table-cell !important;
  }
}
.visible-print-block {
  display: none !important;
}
@media print {
  .visible-print-block {
    display: block !important;
  }
}
.visible-print-inline {
  display: none !important;
}
@media print {
  .visible-print-inline {
    display: inline !important;
  }
}
.visible-print-inline-block {
  display: none !important;
}
@media print {
  .visible-print-inline-block {
    display: inline-block !important;
  }
}
@media print {
  .hidden-print {
    display: none !important;
  }
}
/*!
*
* Font Awesome
*
*/
/*!
 *  Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
/* @font-face {
  font-family: 'FontAwesome';
  src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?v=4.2.0');
  src: url('../components/font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('../components/font-awesome/fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('../components/font-awesome/fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('../components/font-awesome/fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg');
  font-weight: normal;
  font-style: normal;
} */
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333333em;
  line-height: 0.75em;
  vertical-align: -15%;
}
.fa-2x {
  font-size: 2em;
}
.fa-3x {
  font-size: 3em;
}
.fa-4x {
  font-size: 4em;
}
.fa-5x {
  font-size: 5em;
}
.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-ul {
  padding-left: 0;
  margin-left: 2.14285714em;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}
.fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.14285714em;
  text-align: center;
}
.fa-li.fa-lg {
  left: -1.85714286em;
}
.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eee;
  border-radius: .1em;
}
.pull-right {
  float: right;
}
.pull-left {
  float: left;
}
.fa.pull-left {
  margin-right: .3em;
}
.fa.pull-right {
  margin-left: .3em;
}
.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear;
}
@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
.fa-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.fa-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.fa-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg);
}
.fa-flip-horizontal {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1);
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1);
}
.fa-flip-vertical {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1);
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none;
}
.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle;
}
.fa-stack-1x,
.fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
.fa-stack-1x {
  line-height: inherit;
}
.fa-stack-2x {
  font-size: 2em;
}
.fa-inverse {
  color: #fff;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: "\f000";
}
.fa-music:before {
  content: "\f001";
}
.fa-search:before {
  content: "\f002";
}
.fa-envelope-o:before {
  content: "\f003";
}
.fa-heart:before {
  content: "\f004";
}
.fa-star:before {
  content: "\f005";
}
.fa-star-o:before {
  content: "\f006";
}
.fa-user:before {
  content: "\f007";
}
.fa-film:before {
  content: "\f008";
}
.fa-th-large:before {
  content: "\f009";
}
.fa-th:before {
  content: "\f00a";
}
.fa-th-list:before {
  content: "\f00b";
}
.fa-check:before {
  content: "\f00c";
}
.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: "\f00d";
}
.fa-search-plus:before {
  content: "\f00e";
}
.fa-search-minus:before {
  content: "\f010";
}
.fa-power-off:before {
  content: "\f011";
}
.fa-signal:before {
  content: "\f012";
}
.fa-gear:before,
.fa-cog:before {
  content: "\f013";
}
.fa-trash-o:before {
  content: "\f014";
}
.fa-home:before {
  content: "\f015";
}
.fa-file-o:before {
  content: "\f016";
}
.fa-clock-o:before {
  content: "\f017";
}
.fa-road:before {
  content: "\f018";
}
.fa-download:before {
  content: "\f019";
}
.fa-arrow-circle-o-down:before {
  content: "\f01a";
}
.fa-arrow-circle-o-up:before {
  content: "\f01b";
}
.fa-inbox:before {
  content: "\f01c";
}
.fa-play-circle-o:before {
  content: "\f01d";
}
.fa-rotate-right:before,
.fa-repeat:before {
  content: "\f01e";
}
.fa-refresh:before {
  content: "\f021";
}
.fa-list-alt:before {
  content: "\f022";
}
.fa-lock:before {
  content: "\f023";
}
.fa-flag:before {
  content: "\f024";
}
.fa-headphones:before {
  content: "\f025";
}
.fa-volume-off:before {
  content: "\f026";
}
.fa-volume-down:before {
  content: "\f027";
}
.fa-volume-up:before {
  content: "\f028";
}
.fa-qrcode:before {
  content: "\f029";
}
.fa-barcode:before {
  content: "\f02a";
}
.fa-tag:before {
  content: "\f02b";
}
.fa-tags:before {
  content: "\f02c";
}
.fa-book:before {
  content: "\f02d";
}
.fa-bookmark:before {
  content: "\f02e";
}
.fa-print:before {
  content: "\f02f";
}
.fa-camera:before {
  content: "\f030";
}
.fa-font:before {
  content: "\f031";
}
.fa-bold:before {
  content: "\f032";
}
.fa-italic:before {
  content: "\f033";
}
.fa-text-height:before {
  content: "\f034";
}
.fa-text-width:before {
  content: "\f035";
}
.fa-align-left:before {
  content: "\f036";
}
.fa-align-center:before {
  content: "\f037";
}
.fa-align-right:before {
  content: "\f038";
}
.fa-align-justify:before {
  content: "\f039";
}
.fa-list:before {
  content: "\f03a";
}
.fa-dedent:before,
.fa-outdent:before {
  content: "\f03b";
}
.fa-indent:before {
  content: "\f03c";
}
.fa-video-camera:before {
  content: "\f03d";
}
.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: "\f03e";
}
.fa-pencil:before {
  content: "\f040";
}
.fa-map-marker:before {
  content: "\f041";
}
.fa-adjust:before {
  content: "\f042";
}
.fa-tint:before {
  content: "\f043";
}
.fa-edit:before,
.fa-pencil-square-o:before {
  content: "\f044";
}
.fa-share-square-o:before {
  content: "\f045";
}
.fa-check-square-o:before {
  content: "\f046";
}
.fa-arrows:before {
  content: "\f047";
}
.fa-step-backward:before {
  content: "\f048";
}
.fa-fast-backward:before {
  content: "\f049";
}
.fa-backward:before {
  content: "\f04a";
}
.fa-play:before {
  content: "\f04b";
}
.fa-pause:before {
  content: "\f04c";
}
.fa-stop:before {
  content: "\f04d";
}
.fa-forward:before {
  content: "\f04e";
}
.fa-fast-forward:before {
  content: "\f050";
}
.fa-step-forward:before {
  content: "\f051";
}
.fa-eject:before {
  content: "\f052";
}
.fa-chevron-left:before {
  content: "\f053";
}
.fa-chevron-right:before {
  content: "\f054";
}
.fa-plus-circle:before {
  content: "\f055";
}
.fa-minus-circle:before {
  content: "\f056";
}
.fa-times-circle:before {
  content: "\f057";
}
.fa-check-circle:before {
  content: "\f058";
}
.fa-question-circle:before {
  content: "\f059";
}
.fa-info-circle:before {
  content: "\f05a";
}
.fa-crosshairs:before {
  content: "\f05b";
}
.fa-times-circle-o:before {
  content: "\f05c";
}
.fa-check-circle-o:before {
  content: "\f05d";
}
.fa-ban:before {
  content: "\f05e";
}
.fa-arrow-left:before {
  content: "\f060";
}
.fa-arrow-right:before {
  content: "\f061";
}
.fa-arrow-up:before {
  content: "\f062";
}
.fa-arrow-down:before {
  content: "\f063";
}
.fa-mail-forward:before,
.fa-share:before {
  content: "\f064";
}
.fa-expand:before {
  content: "\f065";
}
.fa-compress:before {
  content: "\f066";
}
.fa-plus:before {
  content: "\f067";
}
.fa-minus:before {
  content: "\f068";
}
.fa-asterisk:before {
  content: "\f069";
}
.fa-exclamation-circle:before {
  content: "\f06a";
}
.fa-gift:before {
  content: "\f06b";
}
.fa-leaf:before {
  content: "\f06c";
}
.fa-fire:before {
  content: "\f06d";
}
.fa-eye:before {
  content: "\f06e";
}
.fa-eye-slash:before {
  content: "\f070";
}
.fa-warning:before,
.fa-exclamation-triangle:before {
  content: "\f071";
}
.fa-plane:before {
  content: "\f072";
}
.fa-calendar:before {
  content: "\f073";
}
.fa-random:before {
  content: "\f074";
}
.fa-comment:before {
  content: "\f075";
}
.fa-magnet:before {
  content: "\f076";
}
.fa-chevron-up:before {
  content: "\f077";
}
.fa-chevron-down:before {
  content: "\f078";
}
.fa-retweet:before {
  content: "\f079";
}
.fa-shopping-cart:before {
  content: "\f07a";
}
.fa-folder:before {
  content: "\f07b";
}
.fa-folder-open:before {
  content: "\f07c";
}
.fa-arrows-v:before {
  content: "\f07d";
}
.fa-arrows-h:before {
  content: "\f07e";
}
.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: "\f080";
}
.fa-twitter-square:before {
  content: "\f081";
}
.fa-facebook-square:before {
  content: "\f082";
}
.fa-camera-retro:before {
  content: "\f083";
}
.fa-key:before {
  content: "\f084";
}
.fa-gears:before,
.fa-cogs:before {
  content: "\f085";
}
.fa-comments:before {
  content: "\f086";
}
.fa-thumbs-o-up:before {
  content: "\f087";
}
.fa-thumbs-o-down:before {
  content: "\f088";
}
.fa-star-half:before {
  content: "\f089";
}
.fa-heart-o:before {
  content: "\f08a";
}
.fa-sign-out:before {
  content: "\f08b";
}
.fa-linkedin-square:before {
  content: "\f08c";
}
.fa-thumb-tack:before {
  content: "\f08d";
}
.fa-external-link:before {
  content: "\f08e";
}
.fa-sign-in:before {
  content: "\f090";
}
.fa-trophy:before {
  content: "\f091";
}
.fa-github-square:before {
  content: "\f092";
}
.fa-upload:before {
  content: "\f093";
}
.fa-lemon-o:before {
  content: "\f094";
}
.fa-phone:before {
  content: "\f095";
}
.fa-square-o:before {
  content: "\f096";
}
.fa-bookmark-o:before {
  content: "\f097";
}
.fa-phone-square:before {
  content: "\f098";
}
.fa-twitter:before {
  content: "\f099";
}
.fa-facebook:before {
  content: "\f09a";
}
.fa-github:before {
  content: "\f09b";
}
.fa-unlock:before {
  content: "\f09c";
}
.fa-credit-card:before {
  content: "\f09d";
}
.fa-rss:before {
  content: "\f09e";
}
.fa-hdd-o:before {
  content: "\f0a0";
}
.fa-bullhorn:before {
  content: "\f0a1";
}
.fa-bell:before {
  content: "\f0f3";
}
.fa-certificate:before {
  content: "\f0a3";
}
.fa-hand-o-right:before {
  content: "\f0a4";
}
.fa-hand-o-left:before {
  content: "\f0a5";
}
.fa-hand-o-up:before {
  content: "\f0a6";
}
.fa-hand-o-down:before {
  content: "\f0a7";
}
.fa-arrow-circle-left:before {
  content: "\f0a8";
}
.fa-arrow-circle-right:before {
  content: "\f0a9";
}
.fa-arrow-circle-up:before {
  content: "\f0aa";
}
.fa-arrow-circle-down:before {
  content: "\f0ab";
}
.fa-globe:before {
  content: "\f0ac";
}
.fa-wrench:before {
  content: "\f0ad";
}
.fa-tasks:before {
  content: "\f0ae";
}
.fa-filter:before {
  content: "\f0b0";
}
.fa-briefcase:before {
  content: "\f0b1";
}
.fa-arrows-alt:before {
  content: "\f0b2";
}
.fa-group:before,
.fa-users:before {
  content: "\f0c0";
}
.fa-chain:before,
.fa-link:before {
  content: "\f0c1";
}
.fa-cloud:before {
  content: "\f0c2";
}
.fa-flask:before {
  content: "\f0c3";
}
.fa-cut:before,
.fa-scissors:before {
  content: "\f0c4";
}
.fa-copy:before,
.fa-files-o:before {
  content: "\f0c5";
}
.fa-paperclip:before {
  content: "\f0c6";
}
.fa-save:before,
.fa-floppy-o:before {
  content: "\f0c7";
}
.fa-square:before {
  content: "\f0c8";
}
.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: "\f0c9";
}
.fa-list-ul:before {
  content: "\f0ca";
}
.fa-list-ol:before {
  content: "\f0cb";
}
.fa-strikethrough:before {
  content: "\f0cc";
}
.fa-underline:before {
  content: "\f0cd";
}
.fa-table:before {
  content: "\f0ce";
}
.fa-magic:before {
  content: "\f0d0";
}
.fa-truck:before {
  content: "\f0d1";
}
.fa-pinterest:before {
  content: "\f0d2";
}
.fa-pinterest-square:before {
  content: "\f0d3";
}
.fa-google-plus-square:before {
  content: "\f0d4";
}
.fa-google-plus:before {
  content: "\f0d5";
}
.fa-money:before {
  content: "\f0d6";
}
.fa-caret-down:before {
  content: "\f0d7";
}
.fa-caret-up:before {
  content: "\f0d8";
}
.fa-caret-left:before {
  content: "\f0d9";
}
.fa-caret-right:before {
  content: "\f0da";
}
.fa-columns:before {
  content: "\f0db";
}
.fa-unsorted:before,
.fa-sort:before {
  content: "\f0dc";
}
.fa-sort-down:before,
.fa-sort-desc:before {
  content: "\f0dd";
}
.fa-sort-up:before,
.fa-sort-asc:before {
  content: "\f0de";
}
.fa-envelope:before {
  content: "\f0e0";
}
.fa-linkedin:before {
  content: "\f0e1";
}
.fa-rotate-left:before,
.fa-undo:before {
  content: "\f0e2";
}
.fa-legal:before,
.fa-gavel:before {
  content: "\f0e3";
}
.fa-dashboard:before,
.fa-tachometer:before {
  content: "\f0e4";
}
.fa-comment-o:before {
  content: "\f0e5";
}
.fa-comments-o:before {
  content: "\f0e6";
}
.fa-flash:before,
.fa-bolt:before {
  content: "\f0e7";
}
.fa-sitemap:before {
  content: "\f0e8";
}
.fa-umbrella:before {
  content: "\f0e9";
}
.fa-paste:before,
.fa-clipboard:before {
  content: "\f0ea";
}
.fa-lightbulb-o:before {
  content: "\f0eb";
}
.fa-exchange:before {
  content: "\f0ec";
}
.fa-cloud-download:before {
  content: "\f0ed";
}
.fa-cloud-upload:before {
  content: "\f0ee";
}
.fa-user-md:before {
  content: "\f0f0";
}
.fa-stethoscope:before {
  content: "\f0f1";
}
.fa-suitcase:before {
  content: "\f0f2";
}
.fa-bell-o:before {
  content: "\f0a2";
}
.fa-coffee:before {
  content: "\f0f4";
}
.fa-cutlery:before {
  content: "\f0f5";
}
.fa-file-text-o:before {
  content: "\f0f6";
}
.fa-building-o:before {
  content: "\f0f7";
}
.fa-hospital-o:before {
  content: "\f0f8";
}
.fa-ambulance:before {
  content: "\f0f9";
}
.fa-medkit:before {
  content: "\f0fa";
}
.fa-fighter-jet:before {
  content: "\f0fb";
}
.fa-beer:before {
  content: "\f0fc";
}
.fa-h-square:before {
  content: "\f0fd";
}
.fa-plus-square:before {
  content: "\f0fe";
}
.fa-angle-double-left:before {
  content: "\f100";
}
.fa-angle-double-right:before {
  content: "\f101";
}
.fa-angle-double-up:before {
  content: "\f102";
}
.fa-angle-double-down:before {
  content: "\f103";
}
.fa-angle-left:before {
  content: "\f104";
}
.fa-angle-right:before {
  content: "\f105";
}
.fa-angle-up:before {
  content: "\f106";
}
.fa-angle-down:before {
  content: "\f107";
}
.fa-desktop:before {
  content: "\f108";
}
.fa-laptop:before {
  content: "\f109";
}
.fa-tablet:before {
  content: "\f10a";
}
.fa-mobile-phone:before,
.fa-mobile:before {
  content: "\f10b";
}
.fa-circle-o:before {
  content: "\f10c";
}
.fa-quote-left:before {
  content: "\f10d";
}
.fa-quote-right:before {
  content: "\f10e";
}
.fa-spinner:before {
  content: "\f110";
}
.fa-circle:before {
  content: "\f111";
}
.fa-mail-reply:before,
.fa-reply:before {
  content: "\f112";
}
.fa-github-alt:before {
  content: "\f113";
}
.fa-folder-o:before {
  content: "\f114";
}
.fa-folder-open-o:before {
  content: "\f115";
}
.fa-smile-o:before {
  content: "\f118";
}
.fa-frown-o:before {
  content: "\f119";
}
.fa-meh-o:before {
  content: "\f11a";
}
.fa-gamepad:before {
  content: "\f11b";
}
.fa-keyboard-o:before {
  content: "\f11c";
}
.fa-flag-o:before {
  content: "\f11d";
}
.fa-flag-checkered:before {
  content: "\f11e";
}
.fa-terminal:before {
  content: "\f120";
}
.fa-code:before {
  content: "\f121";
}
.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: "\f122";
}
.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: "\f123";
}
.fa-location-arrow:before {
  content: "\f124";
}
.fa-crop:before {
  content: "\f125";
}
.fa-code-fork:before {
  content: "\f126";
}
.fa-unlink:before,
.fa-chain-broken:before {
  content: "\f127";
}
.fa-question:before {
  content: "\f128";
}
.fa-info:before {
  content: "\f129";
}
.fa-exclamation:before {
  content: "\f12a";
}
.fa-superscript:before {
  content: "\f12b";
}
.fa-subscript:before {
  content: "\f12c";
}
.fa-eraser:before {
  content: "\f12d";
}
.fa-puzzle-piece:before {
  content: "\f12e";
}
.fa-microphone:before {
  content: "\f130";
}
.fa-microphone-slash:before {
  content: "\f131";
}
.fa-shield:before {
  content: "\f132";
}
.fa-calendar-o:before {
  content: "\f133";
}
.fa-fire-extinguisher:before {
  content: "\f134";
}
.fa-rocket:before {
  content: "\f135";
}
.fa-maxcdn:before {
  content: "\f136";
}
.fa-chevron-circle-left:before {
  content: "\f137";
}
.fa-chevron-circle-right:before {
  content: "\f138";
}
.fa-chevron-circle-up:before {
  content: "\f139";
}
.fa-chevron-circle-down:before {
  content: "\f13a";
}
.fa-html5:before {
  content: "\f13b";
}
.fa-css3:before {
  content: "\f13c";
}
.fa-anchor:before {
  content: "\f13d";
}
.fa-unlock-alt:before {
  content: "\f13e";
}
.fa-bullseye:before {
  content: "\f140";
}
.fa-ellipsis-h:before {
  content: "\f141";
}
.fa-ellipsis-v:before {
  content: "\f142";
}
.fa-rss-square:before {
  content: "\f143";
}
.fa-play-circle:before {
  content: "\f144";
}
.fa-ticket:before {
  content: "\f145";
}
.fa-minus-square:before {
  content: "\f146";
}
.fa-minus-square-o:before {
  content: "\f147";
}
.fa-level-up:before {
  content: "\f148";
}
.fa-level-down:before {
  content: "\f149";
}
.fa-check-square:before {
  content: "\f14a";
}
.fa-pencil-square:before {
  content: "\f14b";
}
.fa-external-link-square:before {
  content: "\f14c";
}
.fa-share-square:before {
  content: "\f14d";
}
.fa-compass:before {
  content: "\f14e";
}
.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: "\f150";
}
.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: "\f151";
}
.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: "\f152";
}
.fa-euro:before,
.fa-eur:before {
  content: "\f153";
}
.fa-gbp:before {
  content: "\f154";
}
.fa-dollar:before,
.fa-usd:before {
  content: "\f155";
}
.fa-rupee:before,
.fa-inr:before {
  content: "\f156";
}
.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: "\f157";
}
.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: "\f158";
}
.fa-won:before,
.fa-krw:before {
  content: "\f159";
}
.fa-bitcoin:before,
.fa-btc:before {
  content: "\f15a";
}
.fa-file:before {
  content: "\f15b";
}
.fa-file-text:before {
  content: "\f15c";
}
.fa-sort-alpha-asc:before {
  content: "\f15d";
}
.fa-sort-alpha-desc:before {
  content: "\f15e";
}
.fa-sort-amount-asc:before {
  content: "\f160";
}
.fa-sort-amount-desc:before {
  content: "\f161";
}
.fa-sort-numeric-asc:before {
  content: "\f162";
}
.fa-sort-numeric-desc:before {
  content: "\f163";
}
.fa-thumbs-up:before {
  content: "\f164";
}
.fa-thumbs-down:before {
  content: "\f165";
}
.fa-youtube-square:before {
  content: "\f166";
}
.fa-youtube:before {
  content: "\f167";
}
.fa-xing:before {
  content: "\f168";
}
.fa-xing-square:before {
  content: "\f169";
}
.fa-youtube-play:before {
  content: "\f16a";
}
.fa-dropbox:before {
  content: "\f16b";
}
.fa-stack-overflow:before {
  content: "\f16c";
}
.fa-instagram:before {
  content: "\f16d";
}
.fa-flickr:before {
  content: "\f16e";
}
.fa-adn:before {
  content: "\f170";
}
.fa-bitbucket:before {
  content: "\f171";
}
.fa-bitbucket-square:before {
  content: "\f172";
}
.fa-tumblr:before {
  content: "\f173";
}
.fa-tumblr-square:before {
  content: "\f174";
}
.fa-long-arrow-down:before {
  content: "\f175";
}
.fa-long-arrow-up:before {
  content: "\f176";
}
.fa-long-arrow-left:before {
  content: "\f177";
}
.fa-long-arrow-right:before {
  content: "\f178";
}
.fa-apple:before {
  content: "\f179";
}
.fa-windows:before {
  content: "\f17a";
}
.fa-android:before {
  content: "\f17b";
}
.fa-linux:before {
  content: "\f17c";
}
.fa-dribbble:before {
  content: "\f17d";
}
.fa-skype:before {
  content: "\f17e";
}
.fa-foursquare:before {
  content: "\f180";
}
.fa-trello:before {
  content: "\f181";
}
.fa-female:before {
  content: "\f182";
}
.fa-male:before {
  content: "\f183";
}
.fa-gittip:before {
  content: "\f184";
}
.fa-sun-o:before {
  content: "\f185";
}
.fa-moon-o:before {
  content: "\f186";
}
.fa-archive:before {
  content: "\f187";
}
.fa-bug:before {
  content: "\f188";
}
.fa-vk:before {
  content: "\f189";
}
.fa-weibo:before {
  content: "\f18a";
}
.fa-renren:before {
  content: "\f18b";
}
.fa-pagelines:before {
  content: "\f18c";
}
.fa-stack-exchange:before {
  content: "\f18d";
}
.fa-arrow-circle-o-right:before {
  content: "\f18e";
}
.fa-arrow-circle-o-left:before {
  content: "\f190";
}
.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: "\f191";
}
.fa-dot-circle-o:before {
  content: "\f192";
}
.fa-wheelchair:before {
  content: "\f193";
}
.fa-vimeo-square:before {
  content: "\f194";
}
.fa-turkish-lira:before,
.fa-try:before {
  content: "\f195";
}
.fa-plus-square-o:before {
  content: "\f196";
}
.fa-space-shuttle:before {
  content: "\f197";
}
.fa-slack:before {
  content: "\f198";
}
.fa-envelope-square:before {
  content: "\f199";
}
.fa-wordpress:before {
  content: "\f19a";
}
.fa-openid:before {
  content: "\f19b";
}
.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: "\f19c";
}
.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: "\f19d";
}
.fa-yahoo:before {
  content: "\f19e";
}
.fa-google:before {
  content: "\f1a0";
}
.fa-reddit:before {
  content: "\f1a1";
}
.fa-reddit-square:before {
  content: "\f1a2";
}
.fa-stumbleupon-circle:before {
  content: "\f1a3";
}
.fa-stumbleupon:before {
  content: "\f1a4";
}
.fa-delicious:before {
  content: "\f1a5";
}
.fa-digg:before {
  content: "\f1a6";
}
.fa-pied-piper:before {
  content: "\f1a7";
}
.fa-pied-piper-alt:before {
  content: "\f1a8";
}
.fa-drupal:before {
  content: "\f1a9";
}
.fa-joomla:before {
  content: "\f1aa";
}
.fa-language:before {
  content: "\f1ab";
}
.fa-fax:before {
  content: "\f1ac";
}
.fa-building:before {
  content: "\f1ad";
}
.fa-child:before {
  content: "\f1ae";
}
.fa-paw:before {
  content: "\f1b0";
}
.fa-spoon:before {
  content: "\f1b1";
}
.fa-cube:before {
  content: "\f1b2";
}
.fa-cubes:before {
  content: "\f1b3";
}
.fa-behance:before {
  content: "\f1b4";
}
.fa-behance-square:before {
  content: "\f1b5";
}
.fa-steam:before {
  content: "\f1b6";
}
.fa-steam-square:before {
  content: "\f1b7";
}
.fa-recycle:before {
  content: "\f1b8";
}
.fa-automobile:before,
.fa-car:before {
  content: "\f1b9";
}
.fa-cab:before,
.fa-taxi:before {
  content: "\f1ba";
}
.fa-tree:before {
  content: "\f1bb";
}
.fa-spotify:before {
  content: "\f1bc";
}
.fa-deviantart:before {
  content: "\f1bd";
}
.fa-soundcloud:before {
  content: "\f1be";
}
.fa-database:before {
  content: "\f1c0";
}
.fa-file-pdf-o:before {
  content: "\f1c1";
}
.fa-file-word-o:before {
  content: "\f1c2";
}
.fa-file-excel-o:before {
  content: "\f1c3";
}
.fa-file-powerpoint-o:before {
  content: "\f1c4";
}
.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: "\f1c5";
}
.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: "\f1c6";
}
.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: "\f1c7";
}
.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: "\f1c8";
}
.fa-file-code-o:before {
  content: "\f1c9";
}
.fa-vine:before {
  content: "\f1ca";
}
.fa-codepen:before {
  content: "\f1cb";
}
.fa-jsfiddle:before {
  content: "\f1cc";
}
.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: "\f1cd";
}
.fa-circle-o-notch:before {
  content: "\f1ce";
}
.fa-ra:before,
.fa-rebel:before {
  content: "\f1d0";
}
.fa-ge:before,
.fa-empire:before {
  content: "\f1d1";
}
.fa-git-square:before {
  content: "\f1d2";
}
.fa-git:before {
  content: "\f1d3";
}
.fa-hacker-news:before {
  content: "\f1d4";
}
.fa-tencent-weibo:before {
  content: "\f1d5";
}
.fa-qq:before {
  content: "\f1d6";
}
.fa-wechat:before,
.fa-weixin:before {
  content: "\f1d7";
}
.fa-send:before,
.fa-paper-plane:before {
  content: "\f1d8";
}
.fa-send-o:before,
.fa-paper-plane-o:before {
  content: "\f1d9";
}
.fa-history:before {
  content: "\f1da";
}
.fa-circle-thin:before {
  content: "\f1db";
}
.fa-header:before {
  content: "\f1dc";
}
.fa-paragraph:before {
  content: "\f1dd";
}
.fa-sliders:before {
  content: "\f1de";
}
.fa-share-alt:before {
  content: "\f1e0";
}
.fa-share-alt-square:before {
  content: "\f1e1";
}
.fa-bomb:before {
  content: "\f1e2";
}
.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: "\f1e3";
}
.fa-tty:before {
  content: "\f1e4";
}
.fa-binoculars:before {
  content: "\f1e5";
}
.fa-plug:before {
  content: "\f1e6";
}
.fa-slideshare:before {
  content: "\f1e7";
}
.fa-twitch:before {
  content: "\f1e8";
}
.fa-yelp:before {
  content: "\f1e9";
}
.fa-newspaper-o:before {
  content: "\f1ea";
}
.fa-wifi:before {
  content: "\f1eb";
}
.fa-calculator:before {
  content: "\f1ec";
}
.fa-paypal:before {
  content: "\f1ed";
}
.fa-google-wallet:before {
  content: "\f1ee";
}
.fa-cc-visa:before {
  content: "\f1f0";
}
.fa-cc-mastercard:before {
  content: "\f1f1";
}
.fa-cc-discover:before {
  content: "\f1f2";
}
.fa-cc-amex:before {
  content: "\f1f3";
}
.fa-cc-paypal:before {
  content: "\f1f4";
}
.fa-cc-stripe:before {
  content: "\f1f5";
}
.fa-bell-slash:before {
  content: "\f1f6";
}
.fa-bell-slash-o:before {
  content: "\f1f7";
}
.fa-trash:before {
  content: "\f1f8";
}
.fa-copyright:before {
  content: "\f1f9";
}
.fa-at:before {
  content: "\f1fa";
}
.fa-eyedropper:before {
  content: "\f1fb";
}
.fa-paint-brush:before {
  content: "\f1fc";
}
.fa-birthday-cake:before {
  content: "\f1fd";
}
.fa-area-chart:before {
  content: "\f1fe";
}
.fa-pie-chart:before {
  content: "\f200";
}
.fa-line-chart:before {
  content: "\f201";
}
.fa-lastfm:before {
  content: "\f202";
}
.fa-lastfm-square:before {
  content: "\f203";
}
.fa-toggle-off:before {
  content: "\f204";
}
.fa-toggle-on:before {
  content: "\f205";
}
.fa-bicycle:before {
  content: "\f206";
}
.fa-bus:before {
  content: "\f207";
}
.fa-ioxhost:before {
  content: "\f208";
}
.fa-angellist:before {
  content: "\f209";
}
.fa-cc:before {
  content: "\f20a";
}
.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: "\f20b";
}
.fa-meanpath:before {
  content: "\f20c";
}
/*!
*
* IPython base
*
*/
.modal.fade .modal-dialog {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  -o-transform: translate(0, 0);
  transform: translate(0, 0);
}
code {
  color: #000;
}
pre {
  font-size: inherit;
  line-height: inherit;
}
label {
  font-weight: normal;
}
/* Make the page background atleast 100% the height of the view port */
/* Make the page itself atleast 70% the height of the view port */
.border-box-sizing {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.corner-all {
  border-radius: 2px;
}
.no-padding {
  padding: 0px;
}
/* Flexible box model classes */
/* Taken from Alex Russell http://infrequently.org/2009/08/css-3-progress/ */
/* This file is a compatability layer.  It allows the usage of flexible box
model layouts accross multiple browsers, including older browsers.  The newest,
universal implementation of the flexible box model is used when available (see
`Modern browsers` comments below).  Browsers that are known to implement this
new spec completely include:

    Firefox 28.0+
    Chrome 29.0+
    Internet Explorer 11+
    Opera 17.0+

Browsers not listed, including Safari, are supported via the styling under the
`Old browsers` comments below.
*/
.hbox {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
.hbox > * {
  /* Old browsers */
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  /* Modern browsers */
  flex: none;
}
.vbox {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.vbox > * {
  /* Old browsers */
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  /* Modern browsers */
  flex: none;
}
.hbox.reverse,
.vbox.reverse,
.reverse {
  /* Old browsers */
  -webkit-box-direction: reverse;
  -moz-box-direction: reverse;
  box-direction: reverse;
  /* Modern browsers */
  flex-direction: row-reverse;
}
.hbox.box-flex0,
.vbox.box-flex0,
.box-flex0 {
  /* Old browsers */
  -webkit-box-flex: 0;
  -moz-box-flex: 0;
  box-flex: 0;
  /* Modern browsers */
  flex: none;
  width: auto;
}
.hbox.box-flex1,
.vbox.box-flex1,
.box-flex1 {
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
.hbox.box-flex,
.vbox.box-flex,
.box-flex {
  /* Old browsers */
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
.hbox.box-flex2,
.vbox.box-flex2,
.box-flex2 {
  /* Old browsers */
  -webkit-box-flex: 2;
  -moz-box-flex: 2;
  box-flex: 2;
  /* Modern browsers */
  flex: 2;
}
.box-group1 {
  /*  Deprecated */
  -webkit-box-flex-group: 1;
  -moz-box-flex-group: 1;
  box-flex-group: 1;
}
.box-group2 {
  /* Deprecated */
  -webkit-box-flex-group: 2;
  -moz-box-flex-group: 2;
  box-flex-group: 2;
}
.hbox.start,
.vbox.start,
.start {
  /* Old browsers */
  -webkit-box-pack: start;
  -moz-box-pack: start;
  box-pack: start;
  /* Modern browsers */
  justify-content: flex-start;
}
.hbox.end,
.vbox.end,
.end {
  /* Old browsers */
  -webkit-box-pack: end;
  -moz-box-pack: end;
  box-pack: end;
  /* Modern browsers */
  justify-content: flex-end;
}
.hbox.center,
.vbox.center,
.center {
  /* Old browsers */
  -webkit-box-pack: center;
  -moz-box-pack: center;
  box-pack: center;
  /* Modern browsers */
  justify-content: center;
}
.hbox.baseline,
.vbox.baseline,
.baseline {
  /* Old browsers */
  -webkit-box-pack: baseline;
  -moz-box-pack: baseline;
  box-pack: baseline;
  /* Modern browsers */
  justify-content: baseline;
}
.hbox.stretch,
.vbox.stretch,
.stretch {
  /* Old browsers */
  -webkit-box-pack: stretch;
  -moz-box-pack: stretch;
  box-pack: stretch;
  /* Modern browsers */
  justify-content: stretch;
}
.hbox.align-start,
.vbox.align-start,
.align-start {
  /* Old browsers */
  -webkit-box-align: start;
  -moz-box-align: start;
  box-align: start;
  /* Modern browsers */
  align-items: flex-start;
}
.hbox.align-end,
.vbox.align-end,
.align-end {
  /* Old browsers */
  -webkit-box-align: end;
  -moz-box-align: end;
  box-align: end;
  /* Modern browsers */
  align-items: flex-end;
}
.hbox.align-center,
.vbox.align-center,
.align-center {
  /* Old browsers */
  -webkit-box-align: center;
  -moz-box-align: center;
  box-align: center;
  /* Modern browsers */
  align-items: center;
}
.hbox.align-baseline,
.vbox.align-baseline,
.align-baseline {
  /* Old browsers */
  -webkit-box-align: baseline;
  -moz-box-align: baseline;
  box-align: baseline;
  /* Modern browsers */
  align-items: baseline;
}
.hbox.align-stretch,
.vbox.align-stretch,
.align-stretch {
  /* Old browsers */
  -webkit-box-align: stretch;
  -moz-box-align: stretch;
  box-align: stretch;
  /* Modern browsers */
  align-items: stretch;
}
div.error {
  margin: 2em;
  text-align: center;
}
div.error > h1 {
  font-size: 500%;
  line-height: normal;
}
div.error > p {
  font-size: 200%;
  line-height: normal;
}
div.traceback-wrapper {
  text-align: left;
  max-width: 800px;
  margin: auto;
}
/**
 * Primary styles
 *
 * Author: Jupyter Development Team
 */
body {
  background-color: #fff;
  /* This makes sure that the body covers the entire window and needs to
       be in a different element than the display: box in wrapper below */
  position: absolute;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
  overflow: visible;
}
body > #header {
  /* Initially hidden to prevent FLOUC */
  display: none;
  background-color: #fff;
  /* Display over codemirror */
  position: relative;
  z-index: 100;
}
body > #header #header-container {
  padding-bottom: 5px;
  padding-top: 5px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
body > #header .header-bar {
  width: 100%;
  height: 1px;
  background: #e7e7e7;
  margin-bottom: -1px;
}
@media print {
  body > #header {
    display: none !important;
  }
}
#header-spacer {
  width: 100%;
  visibility: hidden;
}
@media print {
  #header-spacer {
    display: none;
  }
}
#ipython_notebook {
  padding-left: 0px;
  padding-top: 1px;
  padding-bottom: 1px;
}
@media (max-width: 991px) {
  #ipython_notebook {
    margin-left: 10px;
  }
}
#noscript {
  width: auto;
  padding-top: 16px;
  padding-bottom: 16px;
  text-align: center;
  font-size: 22px;
  color: red;
  font-weight: bold;
}
#ipython_notebook img {
  height: 28px;
}
#site {
  width: 100%;
  display: none;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  overflow: auto;
}
@media print {
  #site {
    height: auto !important;
  }
}
/* Smaller buttons */
.ui-button .ui-button-text {
  padding: 0.2em 0.8em;
  font-size: 77%;
}
input.ui-button {
  padding: 0.3em 0.9em;
}
span#login_widget {
  float: right;
}
span#login_widget > .button,
#logout {
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
span#login_widget > .button:focus,
#logout:focus,
span#login_widget > .button.focus,
#logout.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
span#login_widget > .button:hover,
#logout:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
span#login_widget > .button:active,
#logout:active,
span#login_widget > .button.active,
#logout.active,
.open > .dropdown-togglespan#login_widget > .button,
.open > .dropdown-toggle#logout {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
span#login_widget > .button:active:hover,
#logout:active:hover,
span#login_widget > .button.active:hover,
#logout.active:hover,
.open > .dropdown-togglespan#login_widget > .button:hover,
.open > .dropdown-toggle#logout:hover,
span#login_widget > .button:active:focus,
#logout:active:focus,
span#login_widget > .button.active:focus,
#logout.active:focus,
.open > .dropdown-togglespan#login_widget > .button:focus,
.open > .dropdown-toggle#logout:focus,
span#login_widget > .button:active.focus,
#logout:active.focus,
span#login_widget > .button.active.focus,
#logout.active.focus,
.open > .dropdown-togglespan#login_widget > .button.focus,
.open > .dropdown-toggle#logout.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
span#login_widget > .button:active,
#logout:active,
span#login_widget > .button.active,
#logout.active,
.open > .dropdown-togglespan#login_widget > .button,
.open > .dropdown-toggle#logout {
  background-image: none;
}
span#login_widget > .button.disabled:hover,
#logout.disabled:hover,
span#login_widget > .button[disabled]:hover,
#logout[disabled]:hover,
fieldset[disabled] span#login_widget > .button:hover,
fieldset[disabled] #logout:hover,
span#login_widget > .button.disabled:focus,
#logout.disabled:focus,
span#login_widget > .button[disabled]:focus,
#logout[disabled]:focus,
fieldset[disabled] span#login_widget > .button:focus,
fieldset[disabled] #logout:focus,
span#login_widget > .button.disabled.focus,
#logout.disabled.focus,
span#login_widget > .button[disabled].focus,
#logout[disabled].focus,
fieldset[disabled] span#login_widget > .button.focus,
fieldset[disabled] #logout.focus {
  background-color: #fff;
  border-color: #ccc;
}
span#login_widget > .button .badge,
#logout .badge {
  color: #fff;
  background-color: #333;
}
.nav-header {
  text-transform: none;
}
#header > span {
  margin-top: 10px;
}
.modal_stretch .modal-dialog {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: 80vh;
}
.modal_stretch .modal-dialog .modal-body {
  max-height: calc(100vh - 200px);
  overflow: auto;
  flex: 1;
}
@media (min-width: 768px) {
  .modal .modal-dialog {
    width: 700px;
  }
}
@media (min-width: 768px) {
  select.form-control {
    margin-left: 12px;
    margin-right: 12px;
  }
}
/*!
*
* IPython auth
*
*/
.center-nav {
  display: inline-block;
  margin-bottom: -4px;
}
/*!
*
* IPython tree view
*
*/
/* We need an invisible input field on top of the sentense*/
/* "Drag file onto the list ..." */
.alternate_upload {
  background-color: none;
  display: inline;
}
.alternate_upload.form {
  padding: 0;
  margin: 0;
}
.alternate_upload input.fileinput {
  text-align: center;
  vertical-align: middle;
  display: inline;
  opacity: 0;
  z-index: 2;
  width: 12ex;
  margin-right: -12ex;
}
.alternate_upload .btn-upload {
  height: 22px;
}
/**
 * Primary styles
 *
 * Author: Jupyter Development Team
 */
ul#tabs {
  margin-bottom: 4px;
}
ul#tabs a {
  padding-top: 6px;
  padding-bottom: 4px;
}
ul.breadcrumb a:focus,
ul.breadcrumb a:hover {
  text-decoration: none;
}
ul.breadcrumb i.icon-home {
  font-size: 16px;
  margin-right: 4px;
}
ul.breadcrumb span {
  color: #5e5e5e;
}
.list_toolbar {
  padding: 4px 0 4px 0;
  vertical-align: middle;
}
.list_toolbar .tree-buttons {
  padding-top: 1px;
}
.dynamic-buttons {
  padding-top: 3px;
  display: inline-block;
}
.list_toolbar [class*="span"] {
  min-height: 24px;
}
.list_header {
  font-weight: bold;
  background-color: #EEE;
}
.list_placeholder {
  font-weight: bold;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 7px;
  padding-right: 7px;
}
.list_container {
  margin-top: 4px;
  margin-bottom: 20px;
  border: 1px solid #ddd;
  border-radius: 2px;
}
.list_container > div {
  border-bottom: 1px solid #ddd;
}
.list_container > div:hover .list-item {
  background-color: red;
}
.list_container > div:last-child {
  border: none;
}
.list_item:hover .list_item {
  background-color: #ddd;
}
.list_item a {
  text-decoration: none;
}
.list_item:hover {
  background-color: #fafafa;
}
.list_header > div,
.list_item > div {
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 7px;
  padding-right: 7px;
  line-height: 22px;
}
.list_header > div input,
.list_item > div input {
  margin-right: 7px;
  margin-left: 14px;
  vertical-align: baseline;
  line-height: 22px;
  position: relative;
  top: -1px;
}
.list_header > div .item_link,
.list_item > div .item_link {
  margin-left: -1px;
  vertical-align: baseline;
  line-height: 22px;
}
.new-file input[type=checkbox] {
  visibility: hidden;
}
.item_name {
  line-height: 22px;
  height: 24px;
}
.item_icon {
  font-size: 14px;
  color: #5e5e5e;
  margin-right: 7px;
  margin-left: 7px;
  line-height: 22px;
  vertical-align: baseline;
}
.item_buttons {
  line-height: 1em;
  margin-left: -5px;
}
.item_buttons .btn,
.item_buttons .btn-group,
.item_buttons .input-group {
  float: left;
}
.item_buttons > .btn,
.item_buttons > .btn-group,
.item_buttons > .input-group {
  margin-left: 5px;
}
.item_buttons .btn {
  min-width: 13ex;
}
.item_buttons .running-indicator {
  padding-top: 4px;
  color: #5cb85c;
}
.item_buttons .kernel-name {
  padding-top: 4px;
  color: #5bc0de;
  margin-right: 7px;
  float: left;
}
.toolbar_info {
  height: 24px;
  line-height: 24px;
}
.list_item input:not([type=checkbox]) {
  padding-top: 3px;
  padding-bottom: 3px;
  height: 22px;
  line-height: 14px;
  margin: 0px;
}
.highlight_text {
  color: blue;
}
#project_name {
  display: inline-block;
  padding-left: 7px;
  margin-left: -2px;
}
#project_name > .breadcrumb {
  padding: 0px;
  margin-bottom: 0px;
  background-color: transparent;
  font-weight: bold;
}
#tree-selector {
  padding-right: 0px;
}
#button-select-all {
  min-width: 50px;
}
#select-all {
  margin-left: 7px;
  margin-right: 2px;
}
.menu_icon {
  margin-right: 2px;
}
.tab-content .row {
  margin-left: 0px;
  margin-right: 0px;
}
.folder_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f114";
}
.folder_icon:before.pull-left {
  margin-right: .3em;
}
.folder_icon:before.pull-right {
  margin-left: .3em;
}
.notebook_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f02d";
  position: relative;
  top: -1px;
}
.notebook_icon:before.pull-left {
  margin-right: .3em;
}
.notebook_icon:before.pull-right {
  margin-left: .3em;
}
.running_notebook_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f02d";
  position: relative;
  top: -1px;
  color: #5cb85c;
}
.running_notebook_icon:before.pull-left {
  margin-right: .3em;
}
.running_notebook_icon:before.pull-right {
  margin-left: .3em;
}
.file_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f016";
  position: relative;
  top: -2px;
}
.file_icon:before.pull-left {
  margin-right: .3em;
}
.file_icon:before.pull-right {
  margin-left: .3em;
}
#notebook_toolbar .pull-right {
  padding-top: 0px;
  margin-right: -1px;
}
ul#new-menu {
  left: auto;
  right: 0;
}
.kernel-menu-icon {
  padding-right: 12px;
  width: 24px;
  content: "\f096";
}
.kernel-menu-icon:before {
  content: "\f096";
}
.kernel-menu-icon-current:before {
  content: "\f00c";
}
#tab_content {
  padding-top: 20px;
}
#running .panel-group .panel {
  margin-top: 3px;
  margin-bottom: 1em;
}
#running .panel-group .panel .panel-heading {
  background-color: #EEE;
  padding-top: 4px;
  padding-bottom: 4px;
  padding-left: 7px;
  padding-right: 7px;
  line-height: 22px;
}
#running .panel-group .panel .panel-heading a:focus,
#running .panel-group .panel .panel-heading a:hover {
  text-decoration: none;
}
#running .panel-group .panel .panel-body {
  padding: 0px;
}
#running .panel-group .panel .panel-body .list_container {
  margin-top: 0px;
  margin-bottom: 0px;
  border: 0px;
  border-radius: 0px;
}
#running .panel-group .panel .panel-body .list_container .list_item {
  border-bottom: 1px solid #ddd;
}
#running .panel-group .panel .panel-body .list_container .list_item:last-child {
  border-bottom: 0px;
}
.delete-button {
  display: none;
}
.duplicate-button {
  display: none;
}
.rename-button {
  display: none;
}
.shutdown-button {
  display: none;
}
.dynamic-instructions {
  display: inline-block;
  padding-top: 4px;
}
/*!
*
* IPython text editor webapp
*
*/
.selected-keymap i.fa {
  padding: 0px 5px;
}
.selected-keymap i.fa:before {
  content: "\f00c";
}
#mode-menu {
  overflow: auto;
  max-height: 20em;
}
.edit_app #header {
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
.edit_app #menubar .navbar {
  /* Use a negative 1 bottom margin, so the border overlaps the border of the
    header */
  margin-bottom: -1px;
}
.dirty-indicator {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 20px;
}
.dirty-indicator.pull-left {
  margin-right: .3em;
}
.dirty-indicator.pull-right {
  margin-left: .3em;
}
.dirty-indicator-dirty {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 20px;
}
.dirty-indicator-dirty.pull-left {
  margin-right: .3em;
}
.dirty-indicator-dirty.pull-right {
  margin-left: .3em;
}
.dirty-indicator-clean {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 20px;
}
.dirty-indicator-clean.pull-left {
  margin-right: .3em;
}
.dirty-indicator-clean.pull-right {
  margin-left: .3em;
}
.dirty-indicator-clean:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f00c";
}
.dirty-indicator-clean:before.pull-left {
  margin-right: .3em;
}
.dirty-indicator-clean:before.pull-right {
  margin-left: .3em;
}
#filename {
  font-size: 16pt;
  display: table;
  padding: 0px 5px;
}
#current-mode {
  padding-left: 5px;
  padding-right: 5px;
}
#texteditor-backdrop {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media not print {
  #texteditor-backdrop {
    background-color: #EEE;
  }
}
@media print {
  #texteditor-backdrop #texteditor-container .CodeMirror-gutter,
  #texteditor-backdrop #texteditor-container .CodeMirror-gutters {
    background-color: #fff;
  }
}
@media not print {
  #texteditor-backdrop #texteditor-container .CodeMirror-gutter,
  #texteditor-backdrop #texteditor-container .CodeMirror-gutters {
    background-color: #fff;
  }
}
@media not print {
  #texteditor-backdrop #texteditor-container {
    padding: 0px;
    background-color: #fff;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
    box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  }
}
/*!
*
* IPython notebook
*
*/
/* CSS font colors for translated ANSI colors. */
.ansibold {
  font-weight: bold;
}
/* use dark versions for foreground, to improve visibility */
.ansiblack {
  color: black;
}
.ansired {
  color: darkred;
}
.ansigreen {
  color: darkgreen;
}
.ansiyellow {
  color: #c4a000;
}
.ansiblue {
  color: darkblue;
}
.ansipurple {
  color: darkviolet;
}
.ansicyan {
  color: steelblue;
}
.ansigray {
  color: gray;
}
/* and light for background, for the same reason */
.ansibgblack {
  background-color: black;
}
.ansibgred {
  background-color: red;
}
.ansibggreen {
  background-color: green;
}
.ansibgyellow {
  background-color: yellow;
}
.ansibgblue {
  background-color: blue;
}
.ansibgpurple {
  background-color: magenta;
}
.ansibgcyan {
  background-color: cyan;
}
.ansibggray {
  background-color: gray;
}
div.cell {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  border-radius: 2px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  border-width: 1px;
  border-style: solid;
  border-color: transparent;
  width: 100%;
  padding: 5px;
  /* This acts as a spacer between cells, that is outside the border */
  margin: 0px;
  outline: none;
  border-left-width: 1px;
  padding-left: 5px;
  background: linear-gradient(to right, transparent -40px, transparent 1px, transparent 1px, transparent 100%);
}
div.cell.jupyter-soft-selected {
  border-left-color: #90CAF9;
  border-left-color: #E3F2FD;
  border-left-width: 1px;
  padding-left: 5px;
  border-right-color: #E3F2FD;
  border-right-width: 1px;
  background: #E3F2FD;
}
@media print {
  div.cell.jupyter-soft-selected {
    border-color: transparent;
  }
}
div.cell.selected {
  border-color: #ababab;
  border-left-width: 0px;
  padding-left: 6px;
  background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 5px, transparent 5px, transparent 100%);
}
@media print {
  div.cell.selected {
    border-color: transparent;
  }
}
div.cell.selected.jupyter-soft-selected {
  border-left-width: 0;
  padding-left: 6px;
  background: linear-gradient(to right, #42A5F5 -40px, #42A5F5 7px, #E3F2FD 7px, #E3F2FD 100%);
}
.edit_mode div.cell.selected {
  border-color: #66BB6A;
  border-left-width: 0px;
  padding-left: 6px;
  background: linear-gradient(to right, #66BB6A -40px, #66BB6A 5px, transparent 5px, transparent 100%);
}
@media print {
  .edit_mode div.cell.selected {
    border-color: transparent;
  }
}
.prompt {
  /* This needs to be wide enough for 3 digit prompt numbers: In[100]: */
  min-width: 14ex;
  /* This padding is tuned to match the padding on the CodeMirror editor. */
  padding: 0.4em;
  margin: 0px;
  font-family: monospace;
  text-align: right;
  /* This has to match that of the the CodeMirror class line-height below */
  line-height: 1.21429em;
  /* Don't highlight prompt number selection */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  /* Use default cursor */
  cursor: default;
}
@media (max-width: 540px) {
  .prompt {
    text-align: left;
  }
}
div.inner_cell {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
@-moz-document url-prefix() {
  div.inner_cell {
    overflow-x: hidden;
  }
}
/* input_area and input_prompt must match in top border and margin for alignment */
div.input_area {
  border: 1px solid #cfcfcf;
  border-radius: 2px;
  background: #f7f7f7;
  line-height: 1.21429em;
}
/* This is needed so that empty prompt areas can collapse to zero height when there
   is no content in the output_subarea and the prompt. The main purpose of this is
   to make sure that empty JavaScript output_subareas have no height. */
div.prompt:empty {
  padding-top: 0;
  padding-bottom: 0;
}
div.unrecognized_cell {
  padding: 5px 5px 5px 0px;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
div.unrecognized_cell .inner_cell {
  border-radius: 2px;
  padding: 5px;
  font-weight: bold;
  color: red;
  border: 1px solid #cfcfcf;
  background: #eaeaea;
}
div.unrecognized_cell .inner_cell a {
  color: inherit;
  text-decoration: none;
}
div.unrecognized_cell .inner_cell a:hover {
  color: inherit;
  text-decoration: none;
}
@media (max-width: 540px) {
  div.unrecognized_cell > div.prompt {
    display: none;
  }
}
div.code_cell {
  /* avoid page breaking on code cells when printing */
}
@media print {
  div.code_cell {
    page-break-inside: avoid;
  }
}
/* any special styling for code cells that are currently running goes here */
div.input {
  page-break-inside: avoid;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
@media (max-width: 540px) {
  div.input {
    /* Old browsers */
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-box-align: stretch;
    display: -moz-box;
    -moz-box-orient: vertical;
    -moz-box-align: stretch;
    display: box;
    box-orient: vertical;
    box-align: stretch;
    /* Modern browsers */
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
}
/* input_area and input_prompt must match in top border and margin for alignment */
div.input_prompt {
  color: #303F9F;
  border-top: 1px solid transparent;
}
div.input_area > div.highlight {
  margin: 0.4em;
  border: none;
  padding: 0px;
  background-color: transparent;
}
div.input_area > div.highlight > pre {
  margin: 0px;
  border: none;
  padding: 0px;
  background-color: transparent;
}
/* The following gets added to the <head> if it is detected that the user has a
 * monospace font with inconsistent normal/bold/italic height.  See
 * notebookmain.js.  Such fonts will have keywords vertically offset with
 * respect to the rest of the text.  The user should select a better font.
 * See: https://github.com/ipython/ipython/issues/1503
 *
 * .CodeMirror span {
 *      vertical-align: bottom;
 * }
 */
.CodeMirror {
  line-height: 1.21429em;
  /* Changed from 1em to our global default */
  font-size: 14px;
  height: auto;
  /* Changed to auto to autogrow */
  background: none;
  /* Changed from white to allow our bg to show through */
}
.CodeMirror-scroll {
  /*  The CodeMirror docs are a bit fuzzy on if overflow-y should be hidden or visible.*/
  /*  We have found that if it is visible, vertical scrollbars appear with font size changes.*/
  overflow-y: hidden;
  overflow-x: auto;
}
.CodeMirror-lines {
  /* In CM2, this used to be 0.4em, but in CM3 it went to 4px. We need the em value because */
  /* we have set a different line-height and want this to scale with that. */
  padding: 0.4em;
}
.CodeMirror-linenumber {
  padding: 0 8px 0 4px;
}
.CodeMirror-gutters {
  border-bottom-left-radius: 2px;
  border-top-left-radius: 2px;
}
.CodeMirror pre {
  /* In CM3 this went to 4px from 0 in CM2. We need the 0 value because of how we size */
  /* .CodeMirror-lines */
  padding: 0;
  border: 0;
  border-radius: 0;
}
/*

Original style from softwaremaniacs.org (c) Ivan Sagalaev <Maniac@SoftwareManiacs.Org>
Adapted from GitHub theme

*/
.highlight-base {
  color: #000;
}
.highlight-variable {
  color: #000;
}
.highlight-variable-2 {
  color: #1a1a1a;
}
.highlight-variable-3 {
  color: #333333;
}
.highlight-string {
  color: #BA2121;
}
.highlight-comment {
  color: #408080;
  font-style: italic;
}
.highlight-number {
  color: #080;
}
.highlight-atom {
  color: #88F;
}
.highlight-keyword {
  color: #008000;
  font-weight: bold;
}
.highlight-builtin {
  color: #008000;
}
.highlight-error {
  color: #f00;
}
.highlight-operator {
  color: #AA22FF;
  font-weight: bold;
}
.highlight-meta {
  color: #AA22FF;
}
/* previously not defined, copying from default codemirror */
.highlight-def {
  color: #00f;
}
.highlight-string-2 {
  color: #f50;
}
.highlight-qualifier {
  color: #555;
}
.highlight-bracket {
  color: #997;
}
.highlight-tag {
  color: #170;
}
.highlight-attribute {
  color: #00c;
}
.highlight-header {
  color: blue;
}
.highlight-quote {
  color: #090;
}
.highlight-link {
  color: #00c;
}
/* apply the same style to codemirror */
.cm-s-ipython span.cm-keyword {
  color: #008000;
  font-weight: bold;
}
.cm-s-ipython span.cm-atom {
  color: #88F;
}
.cm-s-ipython span.cm-number {
  color: #080;
}
.cm-s-ipython span.cm-def {
  color: #00f;
}
.cm-s-ipython span.cm-variable {
  color: #000;
}
.cm-s-ipython span.cm-operator {
  color: #AA22FF;
  font-weight: bold;
}
.cm-s-ipython span.cm-variable-2 {
  color: #1a1a1a;
}
.cm-s-ipython span.cm-variable-3 {
  color: #333333;
}
.cm-s-ipython span.cm-comment {
  color: #408080;
  font-style: italic;
}
.cm-s-ipython span.cm-string {
  color: #BA2121;
}
.cm-s-ipython span.cm-string-2 {
  color: #f50;
}
.cm-s-ipython span.cm-meta {
  color: #AA22FF;
}
.cm-s-ipython span.cm-qualifier {
  color: #555;
}
.cm-s-ipython span.cm-builtin {
  color: #008000;
}
.cm-s-ipython span.cm-bracket {
  color: #997;
}
.cm-s-ipython span.cm-tag {
  color: #170;
}
.cm-s-ipython span.cm-attribute {
  color: #00c;
}
.cm-s-ipython span.cm-header {
  color: blue;
}
.cm-s-ipython span.cm-quote {
  color: #090;
}
.cm-s-ipython span.cm-link {
  color: #00c;
}
.cm-s-ipython span.cm-error {
  color: #f00;
}
.cm-s-ipython span.cm-tab {
  background: url();
  background-position: right;
  background-repeat: no-repeat;
}
div.output_wrapper {
  /* this position must be relative to enable descendents to be absolute within it */
  position: relative;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
  z-index: 1;
}
/* class for the output area when it should be height-limited */
div.output_scroll {
  /* ideally, this would be max-height, but FF barfs all over that */
  height: 24em;
  /* FF needs this *and the wrapper* to specify full width, or it will shrinkwrap */
  width: 100%;
  overflow: auto;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
  box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.8);
  display: block;
}
/* output div while it is collapsed */
div.output_collapsed {
  margin: 0px;
  padding: 0px;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
div.out_prompt_overlay {
  height: 100%;
  padding: 0px 0.4em;
  position: absolute;
  border-radius: 2px;
}
div.out_prompt_overlay:hover {
  /* use inner shadow to get border that is computed the same on WebKit/FF */
  -webkit-box-shadow: inset 0 0 1px #000;
  box-shadow: inset 0 0 1px #000;
  background: rgba(240, 240, 240, 0.5);
}
div.output_prompt {
  color: #D84315;
}
/* This class is the outer container of all output sections. */
div.output_area {
  padding: 0px;
  page-break-inside: avoid;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
div.output_area .MathJax_Display {
  text-align: left !important;
}
div.output_area .rendered_html table {
  margin-left: 0;
  margin-right: 0;
}
div.output_area .rendered_html img {
  margin-left: 0;
  margin-right: 0;
}
div.output_area img,
div.output_area svg {
  max-width: 100%;
  height: auto;
}
div.output_area img.unconfined,
div.output_area svg.unconfined {
  max-width: none;
}
/* This is needed to protect the pre formating from global settings such
   as that of bootstrap */
.output {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: vertical;
  -moz-box-align: stretch;
  display: box;
  box-orient: vertical;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
@media (max-width: 540px) {
  div.output_area {
    /* Old browsers */
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-box-align: stretch;
    display: -moz-box;
    -moz-box-orient: vertical;
    -moz-box-align: stretch;
    display: box;
    box-orient: vertical;
    box-align: stretch;
    /* Modern browsers */
    display: flex;
    flex-direction: column;
    align-items: stretch;
  }
}
div.output_area pre {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
  color: black;
  background-color: transparent;
  border-radius: 0;
}
/* This class is for the output subarea inside the output_area and after
   the prompt div. */
div.output_subarea {
  overflow-x: auto;
  padding: 0.4em;
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
  max-width: calc(100% - 14ex);
}
div.output_scroll div.output_subarea {
  overflow-x: visible;
}
/* The rest of the output_* classes are for special styling of the different
   output types */
/* all text output has this class: */
div.output_text {
  text-align: left;
  color: #000;
  /* This has to match that of the the CodeMirror class line-height below */
  line-height: 1.21429em;
}
/* stdout/stderr are 'text' as well as 'stream', but execute_result/error are *not* streams */
div.output_stderr {
  background: #fdd;
  /* very light red background for stderr */
}
div.output_latex {
  text-align: left;
}
/* Empty output_javascript divs should have no height */
div.output_javascript:empty {
  padding: 0;
}
.js-error {
  color: darkred;
}
/* raw_input styles */
div.raw_input_container {
  line-height: 1.21429em;
  padding-top: 5px;
}
pre.raw_input_prompt {
  /* nothing needed here. */
}
input.raw_input {
  font-family: monospace;
  font-size: inherit;
  color: inherit;
  width: auto;
  /* make sure input baseline aligns with prompt */
  vertical-align: baseline;
  /* padding + margin = 0.5em between prompt and cursor */
  padding: 0em 0.25em;
  margin: 0em 0.25em;
}
input.raw_input:focus {
  box-shadow: none;
}
p.p-space {
  margin-bottom: 10px;
}
div.output_unrecognized {
  padding: 5px;
  font-weight: bold;
  color: red;
}
div.output_unrecognized a {
  color: inherit;
  text-decoration: none;
}
div.output_unrecognized a:hover {
  color: inherit;
  text-decoration: none;
}
.rendered_html {
  color: #000;
  /* any extras will just be numbers: */
}
.rendered_html em {
  font-style: italic;
}
.rendered_html strong {
  font-weight: bold;
}
.rendered_html u {
  text-decoration: underline;
}
.rendered_html :link {
  text-decoration: underline;
}
.rendered_html :visited {
  text-decoration: underline;
}
.rendered_html h1 {
  font-size: 185.7%;
  margin: 1.08em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h2 {
  font-size: 157.1%;
  margin: 1.27em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h3 {
  font-size: 128.6%;
  margin: 1.55em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h4 {
  font-size: 100%;
  margin: 2em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
}
.rendered_html h5 {
  font-size: 100%;
  margin: 2em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
  font-style: italic;
}
.rendered_html h6 {
  font-size: 100%;
  margin: 2em 0 0 0;
  font-weight: bold;
  line-height: 1.0;
  font-style: italic;
}
.rendered_html h1:first-child {
  margin-top: 0.538em;
}
.rendered_html h2:first-child {
  margin-top: 0.636em;
}
.rendered_html h3:first-child {
  margin-top: 0.777em;
}
.rendered_html h4:first-child {
  margin-top: 1em;
}
.rendered_html h5:first-child {
  margin-top: 1em;
}
.rendered_html h6:first-child {
  margin-top: 1em;
}
.rendered_html ul {
  list-style: disc;
  margin: 0em 2em;
  padding-left: 0px;
}
.rendered_html ul ul {
  list-style: square;
  margin: 0em 2em;
}
.rendered_html ul ul ul {
  list-style: circle;
  margin: 0em 2em;
}
.rendered_html ol {
  list-style: decimal;
  margin: 0em 2em;
  padding-left: 0px;
}
.rendered_html ol ol {
  list-style: upper-alpha;
  margin: 0em 2em;
}
.rendered_html ol ol ol {
  list-style: lower-alpha;
  margin: 0em 2em;
}
.rendered_html ol ol ol ol {
  list-style: lower-roman;
  margin: 0em 2em;
}
.rendered_html ol ol ol ol ol {
  list-style: decimal;
  margin: 0em 2em;
}
.rendered_html * + ul {
  margin-top: 1em;
}
.rendered_html * + ol {
  margin-top: 1em;
}
.rendered_html hr {
  color: black;
  background-color: black;
}
.rendered_html pre {
  margin: 1em 2em;
}
.rendered_html pre,
.rendered_html code {
  border: 0;
  background-color: #fff;
  color: #000;
  font-size: 100%;
  padding: 0px;
}
.rendered_html blockquote {
  margin: 1em 2em;
}
.rendered_html table {
  margin-left: auto;
  margin-right: auto;
  border: 1px solid black;
  border-collapse: collapse;
}
.rendered_html tr,
.rendered_html th,
.rendered_html td {
  border: 1px solid black;
  border-collapse: collapse;
  margin: 1em 2em;
}
.rendered_html td,
.rendered_html th {
  text-align: left;
  vertical-align: middle;
  padding: 4px;
}
.rendered_html th {
  font-weight: bold;
}
.rendered_html * + table {
  margin-top: 1em;
}
.rendered_html p {
  text-align: left;
}
.rendered_html * + p {
  margin-top: 1em;
}
.rendered_html img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.rendered_html * + img {
  margin-top: 1em;
}
.rendered_html img,
.rendered_html svg {
  max-width: 100%;
  height: auto;
}
.rendered_html img.unconfined,
.rendered_html svg.unconfined {
  max-width: none;
}
div.text_cell {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
@media (max-width: 540px) {
  div.text_cell > div.prompt {
    display: none;
  }
}
div.text_cell_render {
  /*font-family: "Helvetica Neue", Arial, Helvetica, Geneva, sans-serif;*/
  outline: none;
  resize: none;
  width: inherit;
  border-style: none;
  padding: 0.5em 0.5em 0.5em 0.4em;
  color: #000;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
a.anchor-link:link {
  text-decoration: none;
  padding: 0px 20px;
  visibility: hidden;
}
h1:hover .anchor-link,
h2:hover .anchor-link,
h3:hover .anchor-link,
h4:hover .anchor-link,
h5:hover .anchor-link,
h6:hover .anchor-link {
  visibility: visible;
}
.text_cell.rendered .input_area {
  display: none;
}
.text_cell.rendered .rendered_html {
  overflow-x: auto;
  overflow-y: hidden;
}
.text_cell.unrendered .text_cell_render {
  display: none;
}
.cm-header-1,
.cm-header-2,
.cm-header-3,
.cm-header-4,
.cm-header-5,
.cm-header-6 {
  font-weight: bold;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.cm-header-1 {
  font-size: 185.7%;
}
.cm-header-2 {
  font-size: 157.1%;
}
.cm-header-3 {
  font-size: 128.6%;
}
.cm-header-4 {
  font-size: 110%;
}
.cm-header-5 {
  font-size: 100%;
  font-style: italic;
}
.cm-header-6 {
  font-size: 100%;
  font-style: italic;
}
/*!
*
* IPython notebook webapp
*
*/
@media (max-width: 767px) {
  .notebook_app {
    padding-left: 0px;
    padding-right: 0px;
  }
}
#ipython-main-app {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  height: 100%;
}
div#notebook_panel {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  height: 100%;
}
div#notebook {
  font-size: 14px;
  line-height: 20px;
  overflow-y: hidden;
  overflow-x: auto;
  width: 100%;
  /* This spaces the page away from the edge of the notebook area */
  padding-top: 20px;
  margin: 0px;
  outline: none;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  min-height: 100%;
}
@media not print {
  #notebook-container {
    padding: 15px;
    background-color: #fff;
    min-height: 0;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
    box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  }
}
@media print {
  #notebook-container {
    width: 100%;
  }
}
div.ui-widget-content {
  border: 1px solid #ababab;
  outline: none;
}
pre.dialog {
  background-color: #f7f7f7;
  border: 1px solid #ddd;
  border-radius: 2px;
  padding: 0.4em;
  padding-left: 2em;
}
p.dialog {
  padding: 0.2em;
}
/* Word-wrap output correctly.  This is the CSS3 spelling, though Firefox seems
   to not honor it correctly.  Webkit browsers (Chrome, rekonq, Safari) do.
 */
pre,
code,
kbd,
samp {
  white-space: pre-wrap;
}
#fonttest {
  font-family: monospace;
}
p {
  margin-bottom: 0;
}
.end_space {
  min-height: 100px;
  transition: height .2s ease;
}
.notebook_app > #header {
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
@media not print {
  .notebook_app {
    background-color: #EEE;
  }
}
kbd {
  border-style: solid;
  border-width: 1px;
  box-shadow: none;
  margin: 2px;
  padding-left: 2px;
  padding-right: 2px;
  padding-top: 1px;
  padding-bottom: 1px;
}
/* CSS for the cell toolbar */
.celltoolbar {
  border: thin solid #CFCFCF;
  border-bottom: none;
  background: #EEE;
  border-radius: 2px 2px 0px 0px;
  width: 100%;
  height: 29px;
  padding-right: 4px;
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
  /* Old browsers */
  -webkit-box-pack: end;
  -moz-box-pack: end;
  box-pack: end;
  /* Modern browsers */
  justify-content: flex-end;
  display: -webkit-flex;
}
@media print {
  .celltoolbar {
    display: none;
  }
}
.ctb_hideshow {
  display: none;
  vertical-align: bottom;
}
/* ctb_show is added to the ctb_hideshow div to show the cell toolbar.
   Cell toolbars are only shown when the ctb_global_show class is also set.
*/
.ctb_global_show .ctb_show.ctb_hideshow {
  display: block;
}
.ctb_global_show .ctb_show + .input_area,
.ctb_global_show .ctb_show + div.text_cell_input,
.ctb_global_show .ctb_show ~ div.text_cell_render {
  border-top-right-radius: 0px;
  border-top-left-radius: 0px;
}
.ctb_global_show .ctb_show ~ div.text_cell_render {
  border: 1px solid #cfcfcf;
}
.celltoolbar {
  font-size: 87%;
  padding-top: 3px;
}
.celltoolbar select {
  display: block;
  width: 100%;
  height: 32px;
  padding: 6px 12px;
  font-size: 13px;
  line-height: 1.42857143;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 2px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 1px;
  width: inherit;
  font-size: inherit;
  height: 22px;
  padding: 0px;
  display: inline-block;
}
.celltoolbar select:focus {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.celltoolbar select::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.celltoolbar select:-ms-input-placeholder {
  color: #999;
}
.celltoolbar select::-webkit-input-placeholder {
  color: #999;
}
.celltoolbar select::-ms-expand {
  border: 0;
  background-color: transparent;
}
.celltoolbar select[disabled],
.celltoolbar select[readonly],
fieldset[disabled] .celltoolbar select {
  background-color: #eeeeee;
  opacity: 1;
}
.celltoolbar select[disabled],
fieldset[disabled] .celltoolbar select {
  cursor: not-allowed;
}
textarea.celltoolbar select {
  height: auto;
}
select.celltoolbar select {
  height: 30px;
  line-height: 30px;
}
textarea.celltoolbar select,
select[multiple].celltoolbar select {
  height: auto;
}
.celltoolbar label {
  margin-left: 5px;
  margin-right: 5px;
}
.completions {
  position: absolute;
  z-index: 110;
  overflow: hidden;
  border: 1px solid #ababab;
  border-radius: 2px;
  -webkit-box-shadow: 0px 6px 10px -1px #adadad;
  box-shadow: 0px 6px 10px -1px #adadad;
  line-height: 1;
}
.completions select {
  background: white;
  outline: none;
  border: none;
  padding: 0px;
  margin: 0px;
  overflow: auto;
  font-family: monospace;
  font-size: 110%;
  color: #000;
  width: auto;
}
.completions select option.context {
  color: #286090;
}
#kernel_logo_widget {
  float: right !important;
  float: right;
}
#kernel_logo_widget .current_kernel_logo {
  display: none;
  margin-top: -1px;
  margin-bottom: -1px;
  width: 32px;
  height: 32px;
}
#menubar {
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  margin-top: 1px;
}
#menubar .navbar {
  border-top: 1px;
  border-radius: 0px 0px 2px 2px;
  margin-bottom: 0px;
}
#menubar .navbar-toggle {
  float: left;
  padding-top: 7px;
  padding-bottom: 7px;
  border: none;
}
#menubar .navbar-collapse {
  clear: left;
}
.nav-wrapper {
  border-bottom: 1px solid #e7e7e7;
}
i.menu-icon {
  padding-top: 4px;
}
ul#help_menu li a {
  overflow: hidden;
  padding-right: 2.2em;
}
ul#help_menu li a i {
  margin-right: -1.2em;
}
.dropdown-submenu {
  position: relative;
}
.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  margin-top: -6px;
  margin-left: -1px;
}
.dropdown-submenu:hover > .dropdown-menu {
  display: block;
}
.dropdown-submenu > a:after {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: block;
  content: "\f0da";
  float: right;
  color: #333333;
  margin-top: 2px;
  margin-right: -10px;
}
.dropdown-submenu > a:after.pull-left {
  margin-right: .3em;
}
.dropdown-submenu > a:after.pull-right {
  margin-left: .3em;
}
.dropdown-submenu:hover > a:after {
  color: #262626;
}
.dropdown-submenu.pull-left {
  float: none;
}
.dropdown-submenu.pull-left > .dropdown-menu {
  left: -100%;
  margin-left: 10px;
}
#notification_area {
  float: right !important;
  float: right;
  z-index: 10;
}
.indicator_area {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
}
#kernel_indicator {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
  border-left: 1px solid;
}
#kernel_indicator .kernel_indicator_name {
  padding-left: 5px;
  padding-right: 5px;
}
#modal_indicator {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
}
#readonly-indicator {
  float: right !important;
  float: right;
  color: #777;
  margin-left: 5px;
  margin-right: 5px;
  width: 11px;
  z-index: 10;
  text-align: center;
  width: auto;
  margin-top: 2px;
  margin-bottom: 0px;
  margin-left: 0px;
  margin-right: 0px;
  display: none;
}
.modal_indicator:before {
  width: 1.28571429em;
  text-align: center;
}
.edit_mode .modal_indicator:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f040";
}
.edit_mode .modal_indicator:before.pull-left {
  margin-right: .3em;
}
.edit_mode .modal_indicator:before.pull-right {
  margin-left: .3em;
}
.command_mode .modal_indicator:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: ' ';
}
.command_mode .modal_indicator:before.pull-left {
  margin-right: .3em;
}
.command_mode .modal_indicator:before.pull-right {
  margin-left: .3em;
}
.kernel_idle_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f10c";
}
.kernel_idle_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_idle_icon:before.pull-right {
  margin-left: .3em;
}
.kernel_busy_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f111";
}
.kernel_busy_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_busy_icon:before.pull-right {
  margin-left: .3em;
}
.kernel_dead_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f1e2";
}
.kernel_dead_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_dead_icon:before.pull-right {
  margin-left: .3em;
}
.kernel_disconnected_icon:before {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "\f127";
}
.kernel_disconnected_icon:before.pull-left {
  margin-right: .3em;
}
.kernel_disconnected_icon:before.pull-right {
  margin-left: .3em;
}
.notification_widget {
  color: #777;
  z-index: 10;
  background: rgba(240, 240, 240, 0.5);
  margin-right: 4px;
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.notification_widget:focus,
.notification_widget.focus {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.notification_widget:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.notification_widget:active,
.notification_widget.active,
.open > .dropdown-toggle.notification_widget {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.notification_widget:active:hover,
.notification_widget.active:hover,
.open > .dropdown-toggle.notification_widget:hover,
.notification_widget:active:focus,
.notification_widget.active:focus,
.open > .dropdown-toggle.notification_widget:focus,
.notification_widget:active.focus,
.notification_widget.active.focus,
.open > .dropdown-toggle.notification_widget.focus {
  color: #333;
  background-color: #d4d4d4;
  border-color: #8c8c8c;
}
.notification_widget:active,
.notification_widget.active,
.open > .dropdown-toggle.notification_widget {
  background-image: none;
}
.notification_widget.disabled:hover,
.notification_widget[disabled]:hover,
fieldset[disabled] .notification_widget:hover,
.notification_widget.disabled:focus,
.notification_widget[disabled]:focus,
fieldset[disabled] .notification_widget:focus,
.notification_widget.disabled.focus,
.notification_widget[disabled].focus,
fieldset[disabled] .notification_widget.focus {
  background-color: #fff;
  border-color: #ccc;
}
.notification_widget .badge {
  color: #fff;
  background-color: #333;
}
.notification_widget.warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.notification_widget.warning:focus,
.notification_widget.warning.focus {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.notification_widget.warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.notification_widget.warning:active,
.notification_widget.warning.active,
.open > .dropdown-toggle.notification_widget.warning {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.notification_widget.warning:active:hover,
.notification_widget.warning.active:hover,
.open > .dropdown-toggle.notification_widget.warning:hover,
.notification_widget.warning:active:focus,
.notification_widget.warning.active:focus,
.open > .dropdown-toggle.notification_widget.warning:focus,
.notification_widget.warning:active.focus,
.notification_widget.warning.active.focus,
.open > .dropdown-toggle.notification_widget.warning.focus {
  color: #fff;
  background-color: #d58512;
  border-color: #985f0d;
}
.notification_widget.warning:active,
.notification_widget.warning.active,
.open > .dropdown-toggle.notification_widget.warning {
  background-image: none;
}
.notification_widget.warning.disabled:hover,
.notification_widget.warning[disabled]:hover,
fieldset[disabled] .notification_widget.warning:hover,
.notification_widget.warning.disabled:focus,
.notification_widget.warning[disabled]:focus,
fieldset[disabled] .notification_widget.warning:focus,
.notification_widget.warning.disabled.focus,
.notification_widget.warning[disabled].focus,
fieldset[disabled] .notification_widget.warning.focus {
  background-color: #f0ad4e;
  border-color: #eea236;
}
.notification_widget.warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.notification_widget.success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.notification_widget.success:focus,
.notification_widget.success.focus {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.notification_widget.success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.notification_widget.success:active,
.notification_widget.success.active,
.open > .dropdown-toggle.notification_widget.success {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.notification_widget.success:active:hover,
.notification_widget.success.active:hover,
.open > .dropdown-toggle.notification_widget.success:hover,
.notification_widget.success:active:focus,
.notification_widget.success.active:focus,
.open > .dropdown-toggle.notification_widget.success:focus,
.notification_widget.success:active.focus,
.notification_widget.success.active.focus,
.open > .dropdown-toggle.notification_widget.success.focus {
  color: #fff;
  background-color: #398439;
  border-color: #255625;
}
.notification_widget.success:active,
.notification_widget.success.active,
.open > .dropdown-toggle.notification_widget.success {
  background-image: none;
}
.notification_widget.success.disabled:hover,
.notification_widget.success[disabled]:hover,
fieldset[disabled] .notification_widget.success:hover,
.notification_widget.success.disabled:focus,
.notification_widget.success[disabled]:focus,
fieldset[disabled] .notification_widget.success:focus,
.notification_widget.success.disabled.focus,
.notification_widget.success[disabled].focus,
fieldset[disabled] .notification_widget.success.focus {
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.notification_widget.success .badge {
  color: #5cb85c;
  background-color: #fff;
}
.notification_widget.info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.notification_widget.info:focus,
.notification_widget.info.focus {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.notification_widget.info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.notification_widget.info:active,
.notification_widget.info.active,
.open > .dropdown-toggle.notification_widget.info {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.notification_widget.info:active:hover,
.notification_widget.info.active:hover,
.open > .dropdown-toggle.notification_widget.info:hover,
.notification_widget.info:active:focus,
.notification_widget.info.active:focus,
.open > .dropdown-toggle.notification_widget.info:focus,
.notification_widget.info:active.focus,
.notification_widget.info.active.focus,
.open > .dropdown-toggle.notification_widget.info.focus {
  color: #fff;
  background-color: #269abc;
  border-color: #1b6d85;
}
.notification_widget.info:active,
.notification_widget.info.active,
.open > .dropdown-toggle.notification_widget.info {
  background-image: none;
}
.notification_widget.info.disabled:hover,
.notification_widget.info[disabled]:hover,
fieldset[disabled] .notification_widget.info:hover,
.notification_widget.info.disabled:focus,
.notification_widget.info[disabled]:focus,
fieldset[disabled] .notification_widget.info:focus,
.notification_widget.info.disabled.focus,
.notification_widget.info[disabled].focus,
fieldset[disabled] .notification_widget.info.focus {
  background-color: #5bc0de;
  border-color: #46b8da;
}
.notification_widget.info .badge {
  color: #5bc0de;
  background-color: #fff;
}
.notification_widget.danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.notification_widget.danger:focus,
.notification_widget.danger.focus {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.notification_widget.danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.notification_widget.danger:active,
.notification_widget.danger.active,
.open > .dropdown-toggle.notification_widget.danger {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.notification_widget.danger:active:hover,
.notification_widget.danger.active:hover,
.open > .dropdown-toggle.notification_widget.danger:hover,
.notification_widget.danger:active:focus,
.notification_widget.danger.active:focus,
.open > .dropdown-toggle.notification_widget.danger:focus,
.notification_widget.danger:active.focus,
.notification_widget.danger.active.focus,
.open > .dropdown-toggle.notification_widget.danger.focus {
  color: #fff;
  background-color: #ac2925;
  border-color: #761c19;
}
.notification_widget.danger:active,
.notification_widget.danger.active,
.open > .dropdown-toggle.notification_widget.danger {
  background-image: none;
}
.notification_widget.danger.disabled:hover,
.notification_widget.danger[disabled]:hover,
fieldset[disabled] .notification_widget.danger:hover,
.notification_widget.danger.disabled:focus,
.notification_widget.danger[disabled]:focus,
fieldset[disabled] .notification_widget.danger:focus,
.notification_widget.danger.disabled.focus,
.notification_widget.danger[disabled].focus,
fieldset[disabled] .notification_widget.danger.focus {
  background-color: #d9534f;
  border-color: #d43f3a;
}
.notification_widget.danger .badge {
  color: #d9534f;
  background-color: #fff;
}
div#pager {
  background-color: #fff;
  font-size: 14px;
  line-height: 20px;
  overflow: hidden;
  display: none;
  position: fixed;
  bottom: 0px;
  width: 100%;
  max-height: 50%;
  padding-top: 8px;
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  /* Display over codemirror */
  z-index: 100;
  /* Hack which prevents jquery ui resizable from changing top. */
  top: auto !important;
}
div#pager pre {
  line-height: 1.21429em;
  color: #000;
  background-color: #f7f7f7;
  padding: 0.4em;
}
div#pager #pager-button-area {
  position: absolute;
  top: 8px;
  right: 20px;
}
div#pager #pager-contents {
  position: relative;
  overflow: auto;
  width: 100%;
  height: 100%;
}
div#pager #pager-contents #pager-container {
  position: relative;
  padding: 15px 0px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
div#pager .ui-resizable-handle {
  top: 0px;
  height: 8px;
  background: #f7f7f7;
  border-top: 1px solid #cfcfcf;
  border-bottom: 1px solid #cfcfcf;
  /* This injects handle bars (a short, wide = symbol) for
        the resize handle. */
}
div#pager .ui-resizable-handle::after {
  content: '';
  top: 2px;
  left: 50%;
  height: 3px;
  width: 30px;
  margin-left: -15px;
  position: absolute;
  border-top: 1px solid #cfcfcf;
}
.quickhelp {
  /* Old browsers */
  display: -webkit-box;
  -webkit-box-orient: horizontal;
  -webkit-box-align: stretch;
  display: -moz-box;
  -moz-box-orient: horizontal;
  -moz-box-align: stretch;
  display: box;
  box-orient: horizontal;
  box-align: stretch;
  /* Modern browsers */
  display: flex;
  flex-direction: row;
  align-items: stretch;
  line-height: 1.8em;
}
.shortcut_key {
  display: inline-block;
  width: 20ex;
  text-align: right;
  font-family: monospace;
}
.shortcut_descr {
  display: inline-block;
  /* Old browsers */
  -webkit-box-flex: 1;
  -moz-box-flex: 1;
  box-flex: 1;
  /* Modern browsers */
  flex: 1;
}
span.save_widget {
  margin-top: 6px;
}
span.save_widget span.filename {
  height: 1em;
  line-height: 1em;
  padding: 3px;
  margin-left: 16px;
  border: none;
  font-size: 146.5%;
  border-radius: 2px;
}
span.save_widget span.filename:hover {
  background-color: #e6e6e6;
}
span.checkpoint_status,
span.autosave_status {
  font-size: small;
}
@media (max-width: 767px) {
  span.save_widget {
    font-size: small;
  }
  span.checkpoint_status,
  span.autosave_status {
    display: none;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  span.checkpoint_status {
    display: none;
  }
  span.autosave_status {
    font-size: x-small;
  }
}
.toolbar {
  padding: 0px;
  margin-left: -5px;
  margin-top: 2px;
  margin-bottom: 5px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.toolbar select,
.toolbar label {
  width: auto;
  vertical-align: middle;
  margin-right: 2px;
  margin-bottom: 0px;
  display: inline;
  font-size: 92%;
  margin-left: 0.3em;
  margin-right: 0.3em;
  padding: 0px;
  padding-top: 3px;
}
.toolbar .btn {
  padding: 2px 8px;
}
.toolbar .btn-group {
  margin-top: 0px;
  margin-left: 5px;
}
#maintoolbar {
  margin-bottom: -3px;
  margin-top: -8px;
  border: 0px;
  min-height: 27px;
  margin-left: 0px;
  padding-top: 11px;
  padding-bottom: 3px;
}
#maintoolbar .navbar-text {
  float: none;
  vertical-align: middle;
  text-align: right;
  margin-left: 5px;
  margin-right: 0px;
  margin-top: 0px;
}
.select-xs {
  height: 24px;
}
.pulse,
.dropdown-menu > li > a.pulse,
li.pulse > a.dropdown-toggle,
li.pulse.open > a.dropdown-toggle {
  background-color: #F37626;
  color: white;
}
/**
 * Primary styles
 *
 * Author: Jupyter Development Team
 */
/** WARNING IF YOU ARE EDITTING THIS FILE, if this is a .css file, It has a lot
 * of chance of beeing generated from the ../less/[samename].less file, you can
 * try to get back the less file by reverting somme commit in history
 **/
/*
 * We'll try to get something pretty, so we
 * have some strange css to have the scroll bar on
 * the left with fix button on the top right of the tooltip
 */
@-moz-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@-moz-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*properties of tooltip after "expand"*/
.bigtooltip {
  overflow: auto;
  height: 200px;
  -webkit-transition-property: height;
  -webkit-transition-duration: 500ms;
  -moz-transition-property: height;
  -moz-transition-duration: 500ms;
  transition-property: height;
  transition-duration: 500ms;
}
/*properties of tooltip before "expand"*/
.smalltooltip {
  -webkit-transition-property: height;
  -webkit-transition-duration: 500ms;
  -moz-transition-property: height;
  -moz-transition-duration: 500ms;
  transition-property: height;
  transition-duration: 500ms;
  text-overflow: ellipsis;
  overflow: hidden;
  height: 80px;
}
.tooltipbuttons {
  position: absolute;
  padding-right: 15px;
  top: 0px;
  right: 0px;
}
.tooltiptext {
  /*avoid the button to overlap on some docstring*/
  padding-right: 30px;
}
.ipython_tooltip {
  max-width: 700px;
  /*fade-in animation when inserted*/
  -webkit-animation: fadeOut 400ms;
  -moz-animation: fadeOut 400ms;
  animation: fadeOut 400ms;
  -webkit-animation: fadeIn 400ms;
  -moz-animation: fadeIn 400ms;
  animation: fadeIn 400ms;
  vertical-align: middle;
  background-color: #f7f7f7;
  overflow: visible;
  border: #ababab 1px solid;
  outline: none;
  padding: 3px;
  margin: 0px;
  padding-left: 7px;
  font-family: monospace;
  min-height: 50px;
  -moz-box-shadow: 0px 6px 10px -1px #adadad;
  -webkit-box-shadow: 0px 6px 10px -1px #adadad;
  box-shadow: 0px 6px 10px -1px #adadad;
  border-radius: 2px;
  position: absolute;
  z-index: 1000;
}
.ipython_tooltip a {
  float: right;
}
.ipython_tooltip .tooltiptext pre {
  border: 0;
  border-radius: 0;
  font-size: 100%;
  background-color: #f7f7f7;
}
.pretooltiparrow {
  left: 0px;
  margin: 0px;
  top: -16px;
  width: 40px;
  height: 16px;
  overflow: hidden;
  position: absolute;
}
.pretooltiparrow:before {
  background-color: #f7f7f7;
  border: 1px #ababab solid;
  z-index: 11;
  content: "";
  position: absolute;
  left: 15px;
  top: 10px;
  width: 25px;
  height: 25px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
}
ul.typeahead-list i {
  margin-left: -10px;
  width: 18px;
}
ul.typeahead-list {
  max-height: 80vh;
  overflow: auto;
}
ul.typeahead-list > li > a {
  /** Firefox bug **/
  /* see https://github.com/jupyter/notebook/issues/559 */
  white-space: normal;
}
.cmd-palette .modal-body {
  padding: 7px;
}
.cmd-palette form {
  background: white;
}
.cmd-palette input {
  outline: none;
}
.no-shortcut {
  display: none;
}
.command-shortcut:before {
  content: "(command)";
  padding-right: 3px;
  color: #777777;
}
.edit-shortcut:before {
  content: "(edit)";
  padding-right: 3px;
  color: #777777;
}
#find-and-replace #replace-preview .match,
#find-and-replace #replace-preview .insert {
  background-color: #BBDEFB;
  border-color: #90CAF9;
  border-style: solid;
  border-width: 1px;
  border-radius: 0px;
}
#find-and-replace #replace-preview .replace .match {
  background-color: #FFCDD2;
  border-color: #EF9A9A;
  border-radius: 0px;
}
#find-and-replace #replace-preview .replace .insert {
  background-color: #C8E6C9;
  border-color: #A5D6A7;
  border-radius: 0px;
}
#find-and-replace #replace-preview {
  max-height: 60vh;
  overflow: auto;
}
#find-and-replace #replace-preview pre {
  padding: 5px 10px;
}
.terminal-app {
  background: #EEE;
}
.terminal-app #header {
  background: #fff;
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.2);
}
.terminal-app .terminal {
  float: left;
  font-family: monospace;
  color: white;
  background: black;
  padding: 0.4em;
  border-radius: 2px;
  -webkit-box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4);
  box-shadow: 0px 0px 12px 1px rgba(87, 87, 87, 0.4);
}
.terminal-app .terminal,
.terminal-app .terminal dummy-screen {
  line-height: 1em;
  font-size: 14px;
}
.terminal-app .terminal-cursor {
  color: black;
  background: white;
}
.terminal-app #terminado-container {
  margin-top: 20px;
}
/*# sourceMappingURL=style.min.css.map */
    </style>
<style type="text/css" scoped>
    .highlight .hll { background-color: #ffffcc }
.highlight  { background: #f8f8f8; }
.highlight .c { color: #408080; font-style: italic } /* Comment */
.highlight .err { border: 1px solid #FF0000 } /* Error */
.highlight .k { color: #008000; font-weight: bold } /* Keyword */
.highlight .o { color: #666666 } /* Operator */
.highlight .ch { color: #408080; font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #BC7A00 } /* Comment.Preproc */
.highlight .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
.highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */
.highlight .cs { color: #408080; font-style: italic } /* Comment.Special */
.highlight .gd { color: #A00000 } /* Generic.Deleted */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #FF0000 } /* Generic.Error */
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.highlight .gi { color: #00A000 } /* Generic.Inserted */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.highlight .gt { color: #0044DD } /* Generic.Traceback */
.highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: #008000 } /* Keyword.Pseudo */
.highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #B00040 } /* Keyword.Type */
.highlight .m { color: #666666 } /* Literal.Number */
.highlight .s { color: #BA2121 } /* Literal.String */
.highlight .na { color: #7D9029 } /* Name.Attribute */
.highlight .nb { color: #008000 } /* Name.Builtin */
.highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */
.highlight .no { color: #880000 } /* Name.Constant */
.highlight .nd { color: #AA22FF } /* Name.Decorator */
.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */
.highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #0000FF } /* Name.Function */
.highlight .nl { color: #A0A000 } /* Name.Label */
.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */
.highlight .nv { color: #19177C } /* Name.Variable */
.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mb { color: #666666 } /* Literal.Number.Bin */
.highlight .mf { color: #666666 } /* Literal.Number.Float */
.highlight .mh { color: #666666 } /* Literal.Number.Hex */
.highlight .mi { color: #666666 } /* Literal.Number.Integer */
.highlight .mo { color: #666666 } /* Literal.Number.Oct */
.highlight .sb { color: #BA2121 } /* Literal.String.Backtick */
.highlight .sc { color: #BA2121 } /* Literal.String.Char */
.highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.highlight .s2 { color: #BA2121 } /* Literal.String.Double */
.highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */
.highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.highlight .sx { color: #008000 } /* Literal.String.Other */
.highlight .sr { color: #BB6688 } /* Literal.String.Regex */
.highlight .s1 { color: #BA2121 } /* Literal.String.Single */
.highlight .ss { color: #19177C } /* Literal.String.Symbol */
.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */
.highlight .vc { color: #19177C } /* Name.Variable.Class */
.highlight .vg { color: #19177C } /* Name.Variable.Global */
.highlight .vi { color: #19177C } /* Name.Variable.Instance */
.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */
    </style>
<style type="text/css" scoped>

/* Temporary definitions which will become obsolete with Notebook release 5.0 */
.ansi-black-fg { color: #3E424D; }
.ansi-black-bg { background-color: #3E424D; }
.ansi-black-intense-fg { color: #282C36; }
.ansi-black-intense-bg { background-color: #282C36; }
.ansi-red-fg { color: #E75C58; }
.ansi-red-bg { background-color: #E75C58; }
.ansi-red-intense-fg { color: #B22B31; }
.ansi-red-intense-bg { background-color: #B22B31; }
.ansi-green-fg { color: #00A250; }
.ansi-green-bg { background-color: #00A250; }
.ansi-green-intense-fg { color: #007427; }
.ansi-green-intense-bg { background-color: #007427; }
.ansi-yellow-fg { color: #DDB62B; }
.ansi-yellow-bg { background-color: #DDB62B; }
.ansi-yellow-intense-fg { color: #B27D12; }
.ansi-yellow-intense-bg { background-color: #B27D12; }
.ansi-blue-fg { color: #208FFB; }
.ansi-blue-bg { background-color: #208FFB; }
.ansi-blue-intense-fg { color: #0065CA; }
.ansi-blue-intense-bg { background-color: #0065CA; }
.ansi-magenta-fg { color: #D160C4; }
.ansi-magenta-bg { background-color: #D160C4; }
.ansi-magenta-intense-fg { color: #A03196; }
.ansi-magenta-intense-bg { background-color: #A03196; }
.ansi-cyan-fg { color: #60C6C8; }
.ansi-cyan-bg { background-color: #60C6C8; }
.ansi-cyan-intense-fg { color: #258F8F; }
.ansi-cyan-intense-bg { background-color: #258F8F; }
.ansi-white-fg { color: #C5C1B4; }
.ansi-white-bg { background-color: #C5C1B4; }
.ansi-white-intense-fg { color: #A1A6B2; }
.ansi-white-intense-bg { background-color: #A1A6B2; }

.ansi-bold { font-weight: bold; }

    </style>


<style type="text/css" scoped>
/* Overrides of notebook CSS for static HTML export */
body {
  overflow: visible;
  padding: 8px;
}

div#notebook {
  overflow: visible;
  border-top: none;
}

@media print {
  div.cell {
    display: block;
    page-break-inside: avoid;
  }
  div.output_wrapper {
    display: block;
    page-break-inside: avoid;
  }
  div.output {
    display: block;
    page-break-inside: avoid;
  }
}
</style>

<!-- Custom stylesheet, it must be in the same directory as the html file -->
<!-- <link rel="stylesheet" href="custom.css"> -->

<!-- Loading mathjax macro -->
<!-- Load mathjax -->
    <script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML"></script>
    <!-- MathJax configuration -->
    <script type="text/x-mathjax-config">
    MathJax.Hub.Config({
        tex2jax: {
            inlineMath: [ ['$','$'], ["\\(","\\)"] ],
            displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
            processEscapes: true,
            processEnvironments: true
        },
        // Center justify equations in code and markdown cells. Elsewhere
        // we use CSS to left justify single line equations in code cells.
        displayAlign: 'center',
        "HTML-CSS": {
            styles: {'.MathJax_Display': {"margin": 0}},
            linebreaks: { automatic: true }
        }
    });
    </script>
    <!-- End of mathjax configuration --></head>
<body>
  <div tabindex="-1" id="notebook" class="border-box-sizing">
    <div class="container" id="notebook-container">

<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h1 id="1A.-Data-Cleaning:-Airbnb-Listings">1A. Data Cleaning: Airbnb Listings<a class="anchor-link" href="#1A.-Data-Cleaning:-Airbnb-Listings">&#182;</a></h1><hr/>

<p><code>Listings.cvs</code> contains detailed listings data, including various attributes (features) of each listing such as location, number of bedrooms, bathrooms, type of bed, reviews, etc for the month of January. The raw data contains 27,392 records and 52 columns. We will first load the data into a Pandas dataframe; however, not all of these columns are applicable for predicting listing prices. We will select the applicable predictors as follows:</p>
<h3 id="Column-Selection">Column Selection<a class="anchor-link" href="#Column-Selection">&#182;</a></h3><h4 id="Selected-Columns">Selected Columns<a class="anchor-link" href="#Selected-Columns">&#182;</a></h4><ul>
<li>id<ul>
<li>will not be used in the prediction, only used for indexing and referencing purposes</li>
</ul>
</li>
<li>host_id<ul>
<li>will not be used in the prediction, only used for indexing and referencing purposes</li>
</ul>
</li>
<li>zipcode</li>
<li>property_type</li>
<li>room_type</li>
<li>accommodates</li>
<li>bathrooms</li>
<li>bedrooms</li>
<li>beds</li>
<li>bed_type</li>
<li>price</li>
<li>minimum_nights</li>
<li>availability_30</li>
<li>number_of_reviews</li>
<li>review_scores_rating</li>
<li>host_listing_count</li>
</ul>
<h4 id="Removed-Columns">Removed Columns<a class="anchor-link" href="#Removed-Columns">&#182;</a></h4><ul>
<li>scrape_id</li>
<li>last_scraped</li>
<li>name (title used in the listing)</li>
<li>picture_url<ul>
<li>future studies may choose to integrate image analysis as a predictor</li>
</ul>
</li>
<li>host_name<ul>
<li>there may certainly be some predictive power when considering gender / ethnicity of the name; however, we chose not to incorporate host_name for various ethical reasons as well as difficulty in discerning gender neutral names let alone ethnicity from a name</li>
</ul>
</li>
<li>host_since<ul>
<li>better explained by number of reviews since a long time host may not actually have made any listings made over that period of time</li>
</ul>
</li>
<li>host_picture_url</li>
<li>street</li>
<li>neighbourhood</li>
<li>neighbourhood_cleansed</li>
<li>city</li>
<li>state<ul>
<li>these location features are better explained by zipcode, which will be easier to turn into a hot encoding as well. By using zipcode we can worry less and mitigate the effects of inaccurate location listings (captured by <code>is_location_exact</code> predictor) as a broader location category is used and for Airbnb the zipcode integrity is very often reliable by nature of the address input</li>
</ul>
</li>
<li>market</li>
<li>country</li>
<li>latitude</li>
<li>longitude<ul>
<li>location again better explained by zipcode</li>
</ul>
</li>
<li>is_location_exact<ul>
<li>by using zipcode the exactness of location is mitigated (many records were indeed exact)</li>
</ul>
</li>
<li>square_feet<ul>
<li>had 26,000+ (96% of original dataset) missing column values - too many to impute</li>
</ul>
</li>
<li>weekly_price</li>
<li>monthly_price<ul>
<li><code>weekly</code> and <code>monthly</code> removed since we are focusing on single day listings</li>
</ul>
</li>
<li>guests_included<ul>
<li>guests have their own price column that is calculated independently of the listing price</li>
</ul>
</li>
<li>extra_people</li>
<li>maximum_nights</li>
<li>calendar_updated</li>
<li>calendar_last_scraped</li>
<li>first_review</li>
<li>last_review</li>
<li>review_score_accuracy &lt;-&gt; review_scores_value</li>
</ul>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[1]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="kn">import</span> <span class="nn">pandas</span> <span class="kn">as</span> <span class="nn">pd</span>
<span class="kn">import</span> <span class="nn">numpy</span> <span class="kn">as</span> <span class="nn">np</span>
<span class="kn">import</span> <span class="nn">matplotlib</span>
<span class="kn">import</span> <span class="nn">seaborn</span> <span class="kn">as</span> <span class="nn">sb</span>
<span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="kn">as</span> <span class="nn">plt</span>
<span class="kn">import</span> <span class="nn">matplotlib.cm</span> <span class="kn">as</span> <span class="nn">cmx</span>
<span class="kn">import</span> <span class="nn">matplotlib.colors</span> <span class="kn">as</span> <span class="nn">colors</span>
<span class="kn">import</span> <span class="nn">math</span>
<span class="kn">import</span> <span class="nn">pylab</span>
<span class="kn">import</span> <span class="nn">scipy.stats</span> <span class="kn">as</span> <span class="nn">stats</span>
<span class="o">%</span><span class="k">matplotlib</span> inline
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[2]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">cols</span> <span class="o">=</span> <span class="p">[</span>
    <span class="s1">&#39;id&#39;</span><span class="p">,</span>
    <span class="s1">&#39;host_id&#39;</span><span class="p">,</span>
    <span class="s1">&#39;zipcode&#39;</span><span class="p">,</span>
    <span class="s1">&#39;property_type&#39;</span><span class="p">,</span>
    <span class="s1">&#39;room_type&#39;</span><span class="p">,</span>
    <span class="s1">&#39;accommodates&#39;</span><span class="p">,</span>
    <span class="s1">&#39;bedrooms&#39;</span><span class="p">,</span>
    <span class="s1">&#39;beds&#39;</span><span class="p">,</span>
    <span class="s1">&#39;bed_type&#39;</span><span class="p">,</span>
    <span class="s1">&#39;price&#39;</span><span class="p">,</span>
    <span class="s1">&#39;number_of_reviews&#39;</span><span class="p">,</span>
    <span class="s1">&#39;review_scores_rating&#39;</span><span class="p">,</span>
    <span class="s1">&#39;host_listing_count&#39;</span><span class="p">,</span>
    <span class="s1">&#39;availability_30&#39;</span><span class="p">,</span>
    <span class="s1">&#39;minimum_nights&#39;</span><span class="p">,</span>
    <span class="s1">&#39;bathrooms&#39;</span>
<span class="p">]</span>

<span class="n">data</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">read_csv</span><span class="p">(</span><span class="s1">&#39;../datasets/raw_datasets/listings.csv&#39;</span><span class="p">,</span> <span class="n">usecols</span><span class="o">=</span><span class="n">cols</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[3]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="n">data</span><span class="o">.</span><span class="n">head</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[3]:</div>

<div class="output_html rendered_html output_subarea output_execute_result">
<div>
<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>id</th>
      <th>host_id</th>
      <th>zipcode</th>
      <th>property_type</th>
      <th>room_type</th>
      <th>accommodates</th>
      <th>bathrooms</th>
      <th>bedrooms</th>
      <th>beds</th>
      <th>bed_type</th>
      <th>price</th>
      <th>minimum_nights</th>
      <th>availability_30</th>
      <th>number_of_reviews</th>
      <th>review_scores_rating</th>
      <th>host_listing_count</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>0</th>
      <td>1069266</td>
      <td>5867023</td>
      <td>10022-4175</td>
      <td>Apartment</td>
      <td>Entire home/apt</td>
      <td>2</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>Real Bed</td>
      <td>$160.00</td>
      <td>3</td>
      <td>21</td>
      <td>62</td>
      <td>86.0</td>
      <td>1</td>
    </tr>
    <tr>
      <th>1</th>
      <td>1846722</td>
      <td>2631556</td>
      <td>NaN</td>
      <td>Apartment</td>
      <td>Entire home/apt</td>
      <td>10</td>
      <td>1.0</td>
      <td>3.0</td>
      <td>3.0</td>
      <td>Real Bed</td>
      <td>$105.00</td>
      <td>1</td>
      <td>28</td>
      <td>22</td>
      <td>85.0</td>
      <td>2</td>
    </tr>
    <tr>
      <th>2</th>
      <td>2061725</td>
      <td>4601412</td>
      <td>11221</td>
      <td>Apartment</td>
      <td>Private room</td>
      <td>2</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>2.0</td>
      <td>Real Bed</td>
      <td>$58.00</td>
      <td>3</td>
      <td>4</td>
      <td>35</td>
      <td>98.0</td>
      <td>4</td>
    </tr>
    <tr>
      <th>3</th>
      <td>44974</td>
      <td>198425</td>
      <td>10011</td>
      <td>Apartment</td>
      <td>Entire home/apt</td>
      <td>2</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>Real Bed</td>
      <td>$185.00</td>
      <td>10</td>
      <td>1</td>
      <td>26</td>
      <td>96.0</td>
      <td>1</td>
    </tr>
    <tr>
      <th>4</th>
      <td>4701675</td>
      <td>22590025</td>
      <td>10011</td>
      <td>Apartment</td>
      <td>Entire home/apt</td>
      <td>2</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>2.0</td>
      <td>Real Bed</td>
      <td>$195.00</td>
      <td>1</td>
      <td>30</td>
      <td>1</td>
      <td>100.0</td>
      <td>1</td>
    </tr>
  </tbody>
</table>
</div>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[4]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># determine the number of missing entries in each column</span>
<span class="k">for</span> <span class="n">col</span> <span class="ow">in</span> <span class="n">data</span><span class="o">.</span><span class="n">columns</span><span class="p">:</span>
    <span class="k">print</span> <span class="n">col</span> <span class="o">+</span> <span class="s1">&#39;, Number of Missing Values:&#39;</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="n">col</span><span class="p">][</span><span class="n">data</span><span class="p">[</span><span class="n">col</span><span class="p">]</span><span class="o">.</span><span class="n">isnull</span><span class="p">()])</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>id, Number of Missing Values: 0
host_id, Number of Missing Values: 0
zipcode, Number of Missing Values: 162
property_type, Number of Missing Values: 6
room_type, Number of Missing Values: 0
accommodates, Number of Missing Values: 0
bathrooms, Number of Missing Values: 463
bedrooms, Number of Missing Values: 140
beds, Number of Missing Values: 98
bed_type, Number of Missing Values: 0
price, Number of Missing Values: 0
minimum_nights, Number of Missing Values: 0
availability_30, Number of Missing Values: 0
number_of_reviews, Number of Missing Values: 0
review_scores_rating, Number of Missing Values: 8657
host_listing_count, Number of Missing Values: 0
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<h3 id="Data-Cleaning">Data Cleaning<a class="anchor-link" href="#Data-Cleaning">&#182;</a></h3><ol>
<li>We drop any entries that are missing (NaN) values (except for review_scores_rating).</li>
<li>We convert the format in <code>price</code> from $1.00 into a float of 1.00. </li>
<li>We also drop any entries that are inconsistent; i.e. predictors <code>accommodates</code>, <code>bedrooms</code>, <code>beds</code>, or <code>price</code> with a value of 0.</li>
<li>Convert ZipCode values such as 10022-4175 into 10022</li>
</ol>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[5]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># remove NaN values from dataframe</span>
<span class="n">original</span> <span class="o">=</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">)</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">data</span><span class="o">.</span><span class="n">dropna</span><span class="p">(</span><span class="n">how</span><span class="o">=</span><span class="s1">&#39;any&#39;</span><span class="p">,</span> <span class="n">subset</span><span class="o">=</span><span class="p">[</span><span class="s1">&#39;zipcode&#39;</span><span class="p">,</span> <span class="s1">&#39;property_type&#39;</span><span class="p">,</span> <span class="s1">&#39;bedrooms&#39;</span><span class="p">,</span> <span class="s1">&#39;beds&#39;</span><span class="p">,</span> <span class="s1">&#39;bathrooms&#39;</span><span class="p">])</span>
<span class="k">print</span> <span class="s1">&#39;Number of NaN values removed:&#39;</span><span class="p">,</span> <span class="n">original</span> <span class="o">-</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">)</span>

<span class="c1"># convert formatting for price</span>
<span class="n">data</span><span class="p">[</span><span class="s1">&#39;price&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;price&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">str</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">r&#39;[^-+\d.]&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="nb">float</span><span class="p">))</span>

<span class="c1"># drop any inconsistent values</span>
<span class="k">print</span> <span class="s1">&#39;Number of Accommodates 0:&#39;</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;accommodates&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">])</span>
<span class="k">print</span> <span class="s1">&#39;Number of Bedrooms 0:&#39;</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;bedrooms&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">])</span>
<span class="k">print</span> <span class="s1">&#39;Number of Beds 0:&#39;</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;beds&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">])</span>
<span class="k">print</span> <span class="s1">&#39;Number of Listings with Price $0.00:&#39;</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;price&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="mf">0.00</span><span class="p">])</span>

<span class="n">data</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;accommodates&#39;</span><span class="p">]</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">]</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;bedrooms&#39;</span><span class="p">]</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">]</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;beds&#39;</span><span class="p">]</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">]</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;price&#39;</span><span class="p">]</span> <span class="o">!=</span> <span class="mf">0.00</span><span class="p">]</span>

<span class="c1"># convert ZipCode</span>
<span class="n">data</span><span class="p">[</span><span class="s1">&#39;zipcode&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="s1">&#39;zipcode&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">str</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">r&#39;-\d+&#39;</span><span class="p">,</span> <span class="s1">&#39;&#39;</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Number of NaN values removed: 769
Number of Accommodates 0: 0
Number of Bedrooms 0: 2321
Number of Beds 0: 0
Number of Listings with Price $0.00: 0
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[6]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># we see the data is now clean</span>
<span class="n">data</span><span class="o">.</span><span class="n">head</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[6]:</div>

<div class="output_html rendered_html output_subarea output_execute_result">
<div>
<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>id</th>
      <th>host_id</th>
      <th>zipcode</th>
      <th>property_type</th>
      <th>room_type</th>
      <th>accommodates</th>
      <th>bathrooms</th>
      <th>bedrooms</th>
      <th>beds</th>
      <th>bed_type</th>
      <th>price</th>
      <th>minimum_nights</th>
      <th>availability_30</th>
      <th>number_of_reviews</th>
      <th>review_scores_rating</th>
      <th>host_listing_count</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>0</th>
      <td>1069266</td>
      <td>5867023</td>
      <td>10022</td>
      <td>Apartment</td>
      <td>Entire home/apt</td>
      <td>2</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>Real Bed</td>
      <td>160.0</td>
      <td>3</td>
      <td>21</td>
      <td>62</td>
      <td>86.0</td>
      <td>1</td>
    </tr>
    <tr>
      <th>2</th>
      <td>2061725</td>
      <td>4601412</td>
      <td>11221</td>
      <td>Apartment</td>
      <td>Private room</td>
      <td>2</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>2.0</td>
      <td>Real Bed</td>
      <td>58.0</td>
      <td>3</td>
      <td>4</td>
      <td>35</td>
      <td>98.0</td>
      <td>4</td>
    </tr>
    <tr>
      <th>3</th>
      <td>44974</td>
      <td>198425</td>
      <td>10011</td>
      <td>Apartment</td>
      <td>Entire home/apt</td>
      <td>2</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>Real Bed</td>
      <td>185.0</td>
      <td>10</td>
      <td>1</td>
      <td>26</td>
      <td>96.0</td>
      <td>1</td>
    </tr>
    <tr>
      <th>4</th>
      <td>4701675</td>
      <td>22590025</td>
      <td>10011</td>
      <td>Apartment</td>
      <td>Entire home/apt</td>
      <td>2</td>
      <td>1.0</td>
      <td>1.0</td>
      <td>2.0</td>
      <td>Real Bed</td>
      <td>195.0</td>
      <td>1</td>
      <td>30</td>
      <td>1</td>
      <td>100.0</td>
      <td>1</td>
    </tr>
    <tr>
      <th>5</th>
      <td>68914</td>
      <td>343302</td>
      <td>11231</td>
      <td>Apartment</td>
      <td>Entire home/apt</td>
      <td>6</td>
      <td>1.0</td>
      <td>2.0</td>
      <td>3.0</td>
      <td>Real Bed</td>
      <td>165.0</td>
      <td>2</td>
      <td>11</td>
      <td>16</td>
      <td>96.0</td>
      <td>2</td>
    </tr>
  </tbody>
</table>
</div>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[7]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="k">print</span> <span class="s1">&#39;Number of missing review scores ratings:&#39;</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">][</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">isnull</span><span class="p">()])</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Number of missing review scores ratings: 7712
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[8]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># explore distribution of accommodates</span>
<span class="k">print</span> <span class="s1">&#39;Number of Unique Accomodation: &#39;</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">unique</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;accommodates&#39;</span><span class="p">])</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">17</span><span class="p">):</span>
    <span class="k">print</span> <span class="s1">&#39;Accommodation {}:&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">i</span><span class="p">),</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;accommodates&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="n">i</span><span class="p">])</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Number of Unique Accomodation:  [ 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16]
Accommodation 1: 2643
Accommodation 2: 11400
Accommodation 3: 2909
Accommodation 4: 4278
Accommodation 5: 982
Accommodation 6: 1214
Accommodation 7: 217
Accommodation 8: 333
Accommodation 9: 57
Accommodation 10: 119
Accommodation 11: 15
Accommodation 12: 43
Accommodation 13: 4
Accommodation 14: 14
Accommodation 15: 5
Accommodation 16: 69
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[9]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># visualize distribution of price (target variable)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">hist</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;accommodates&#39;</span><span class="p">],</span> <span class="n">bins</span><span class="o">=</span><span class="mi">50</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s2">&quot;Histogram of Accommodations&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xlabel</span><span class="p">(</span><span class="s2">&quot;Number of Accommodations&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s2">&quot;Frequency&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
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
RU5ErkJggg==
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>We see that a majority of listings have accomodations for 1-4 people. 1 bed typically accomodates 2 individuals, so let's plot beds instead to analyze how many of the listings are single bedroom listings.</p>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[10]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="k">print</span> <span class="s1">&#39;Number of Unique Beds: &#39;</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">unique</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;beds&#39;</span><span class="p">])</span>
<span class="k">for</span> <span class="n">i</span> <span class="ow">in</span> <span class="nb">range</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">17</span><span class="p">):</span>
    <span class="k">print</span> <span class="s1">&#39;Beds {}:&#39;</span><span class="o">.</span><span class="n">format</span><span class="p">(</span><span class="n">i</span><span class="p">),</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;beds&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="n">i</span><span class="p">])</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Number of Unique Beds:  [  1.   2.   3.   4.   5.   6.   7.   8.   9.  10.  11.  12.  13.  14.  16.]
Beds 1: 16002
Beds 2: 5418
Beds 3: 1770
Beds 4: 610
Beds 5: 243
Beds 6: 117
Beds 7: 41
Beds 8: 22
Beds 9: 3
Beds 10: 20
Beds 11: 4
Beds 12: 9
Beds 13: 1
Beds 14: 15
Beds 15: 0
Beds 16: 27
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[11]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># visualize distribution of beds</span>
<span class="n">plt</span><span class="o">.</span><span class="n">hist</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;beds&#39;</span><span class="p">],</span> <span class="n">bins</span><span class="o">=</span><span class="mi">50</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s2">&quot;Histogram of Beds&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xlabel</span><span class="p">(</span><span class="s2">&quot;Bed Count&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s2">&quot;Frequency&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
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
rkJggg==
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>We see that a majority of our listings are indeed single bedroom listings roughly 66%.</p>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[12]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># visualize distribution of review scores ratings</span>
<span class="n">plt</span><span class="o">.</span><span class="n">hist</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">][</span><span class="o">~</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">isnull</span><span class="p">()])</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s2">&quot;Histogram of Review Scores Ratings&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xlabel</span><span class="p">(</span><span class="s2">&quot;Review Score&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s2">&quot;Frequency&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
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
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>There are 7712 listings with no review_scores_rating (NaN) values. We will handle this by turning the <code>review_scores_ratings</code> into a categorical predictor. Based on the histogram, we see that a vast majority of the listings seem to have overall favorable ratings; i.e. skewed left distribution. We replace any NaN values that have no review with 'No Reviews' and we remove any remaining inconsistent NaN values that have a <code>number_of_reviews</code> &gt; 0. We will also convert the <code>review_scores_ratings</code> into buckets. We will have the bucket ranges set more closely to a higher review score to accomodate for the skewed left distribution of the review scores.</p>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[13]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># turn NaN scores with 0 reviews into &#39;No Reviews&#39;</span>
<span class="n">idx_vals</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">][</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;number_of_reviews&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">index</span><span class="o">.</span><span class="n">values</span><span class="o">.</span><span class="n">tolist</span><span class="p">()</span>
<span class="n">data</span><span class="o">.</span><span class="n">loc</span><span class="p">[</span><span class="n">idx_vals</span><span class="p">,</span> <span class="p">(</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">)]</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">][</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;number_of_reviews&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">&#39;NaN&#39;</span><span class="p">,</span> <span class="s1">&#39;No Reviews&#39;</span><span class="p">)</span>

<span class="c1"># remove inconsistent NaN values</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="o">~</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">isnull</span><span class="p">()]</span>

<span class="c1"># ensure all zipcodes are of length 5</span>
<span class="n">data</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;zipcode&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">map</span><span class="p">(</span><span class="nb">len</span><span class="p">)</span> <span class="o">==</span> <span class="mi">5</span><span class="p">]</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[14]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># convert review_scores_rating into buckets</span>
<span class="k">def</span> <span class="nf">convert_scores_buckets</span><span class="p">(</span><span class="n">val</span><span class="p">):</span>
    <span class="k">if</span> <span class="n">val</span> <span class="o">==</span> <span class="s1">&#39;No Reviews&#39;</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;No Reviews&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">95.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;95-100&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">90.0</span> <span class="ow">and</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">95.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;90-94&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">85.0</span> <span class="ow">and</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">90.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;85-89&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">80.0</span> <span class="ow">and</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">85.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;80-84&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">70.0</span> <span class="ow">and</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">80.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;70-79&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">60.0</span> <span class="ow">and</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">70.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;60-69&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">50.0</span> <span class="ow">and</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">60.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;50-59&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">40.0</span> <span class="ow">and</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">50.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;40-49&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">30.0</span> <span class="ow">and</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">40.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;30-39&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">20.0</span> <span class="ow">and</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">30.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;20-29&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&gt;=</span> <span class="mf">10.0</span> <span class="ow">and</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">20.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;10-19&#39;</span>
    <span class="k">elif</span> <span class="n">val</span> <span class="o">&lt;</span> <span class="mf">10.0</span><span class="p">:</span>
        <span class="k">return</span> <span class="s1">&#39;0-9&#39;</span>

<span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">apply</span><span class="p">(</span><span class="n">convert_scores_buckets</span><span class="p">)</span>
<span class="k">print</span> <span class="s1">&#39;Unique Values in the Column:&#39;</span><span class="p">,</span> <span class="n">np</span><span class="o">.</span><span class="n">unique</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">])</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Unique Values in the Column: [&#39;20-29&#39; &#39;30-39&#39; &#39;40-49&#39; &#39;50-59&#39; &#39;60-69&#39; &#39;70-79&#39; &#39;80-84&#39; &#39;85-89&#39; &#39;90-94&#39;
 &#39;95-100&#39; &#39;No Reviews&#39;]
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[15]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="k">print</span> <span class="s1">&#39;Number of remaining records:&#39;</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">data</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Number of remaining records: 24050
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>Our dataset is now clean and we no longer have any missing values. We have a total of 24,050 records from the original 27,392; thus, we've retained a reasonable amount of records. We have a few columns that contain categorical predictors. The regressors in scikit learn require numeric fields; thus we will use the <code>get_dummies</code> routine in Pandas to convert these into 'dummy' variables (one hot encoding); i.e we will add a column for every possible value of the field. We will standardize the non-categorical predictors and convert them to floating point values since we will later try linear regression models such as Ridge and Lasso regression.</p>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[16]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># encode categorical variables</span>
<span class="n">zipcode_dummies</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">get_dummies</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;zipcode&#39;</span><span class="p">])</span>
<span class="n">property_dummies</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">get_dummies</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;property_type&#39;</span><span class="p">])</span>
<span class="n">room_dummies</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">get_dummies</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;room_type&#39;</span><span class="p">])</span>
<span class="n">bed_dummies</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">get_dummies</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;bed_type&#39;</span><span class="p">])</span>
<span class="n">ratings_scores_dummies</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">get_dummies</span><span class="p">(</span><span class="n">data</span><span class="p">[</span><span class="s1">&#39;review_scores_rating&#39;</span><span class="p">])</span>

<span class="c1"># replace the old columns with our new one-hot encoded ones</span>
<span class="n">df</span> <span class="o">=</span> <span class="n">pd</span><span class="o">.</span><span class="n">concat</span><span class="p">((</span><span class="n">data</span><span class="o">.</span><span class="n">drop</span><span class="p">([</span><span class="s1">&#39;zipcode&#39;</span><span class="p">,</span> \
    <span class="s1">&#39;property_type&#39;</span><span class="p">,</span> <span class="s1">&#39;room_type&#39;</span><span class="p">,</span> <span class="s1">&#39;bed_type&#39;</span><span class="p">,</span> <span class="s1">&#39;review_scores_rating&#39;</span><span class="p">],</span> <span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">),</span> \
    <span class="n">zipcode_dummies</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="nb">int</span><span class="p">),</span> <span class="n">property_dummies</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="nb">int</span><span class="p">),</span> \
    <span class="n">room_dummies</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="nb">int</span><span class="p">),</span> <span class="n">bed_dummies</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="nb">int</span><span class="p">),</span> <span class="n">ratings_scores_dummies</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="nb">int</span><span class="p">)),</span> \
    <span class="n">axis</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span>

<span class="k">print</span> <span class="s1">&#39;Number of Columns:&#39;</span><span class="p">,</span> <span class="nb">len</span><span class="p">(</span><span class="n">df</span><span class="o">.</span><span class="n">columns</span><span class="p">)</span>

<span class="c1"># move target predictor &#39;price&#39; to the end of the dataframe</span>
<span class="n">cols</span> <span class="o">=</span> <span class="nb">list</span><span class="p">(</span><span class="n">df</span><span class="o">.</span><span class="n">columns</span><span class="o">.</span><span class="n">values</span><span class="p">)</span>
<span class="n">idx</span> <span class="o">=</span> <span class="n">cols</span><span class="o">.</span><span class="n">index</span><span class="p">(</span><span class="s1">&#39;price&#39;</span><span class="p">)</span>
<span class="n">rearrange_cols</span> <span class="o">=</span> <span class="n">cols</span><span class="p">[:</span><span class="n">idx</span><span class="p">]</span> <span class="o">+</span> <span class="n">cols</span><span class="p">[</span><span class="n">idx</span><span class="o">+</span><span class="mi">1</span><span class="p">:]</span> <span class="o">+</span> <span class="p">[</span><span class="n">cols</span><span class="p">[</span><span class="n">idx</span><span class="p">]]</span>
<span class="n">df</span> <span class="o">=</span> <span class="n">df</span><span class="p">[</span><span class="n">rearrange_cols</span><span class="p">]</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>
<div class="output_subarea output_stream output_stdout output_text">
<pre>Number of Columns: 225
</pre>
</div>
</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[17]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># convert non-categorical variables to floats and standardize</span>
<span class="k">def</span> <span class="nf">standardize_col</span><span class="p">(</span><span class="n">col</span><span class="p">):</span>
    <span class="n">mean</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">mean</span><span class="p">(</span><span class="n">col</span><span class="p">)</span>
    <span class="n">std</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">std</span><span class="p">(</span><span class="n">col</span><span class="p">)</span>
    <span class="k">return</span> <span class="n">col</span><span class="o">.</span><span class="n">apply</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="p">(</span><span class="n">x</span> <span class="o">-</span> <span class="n">mean</span><span class="p">)</span> <span class="o">/</span> <span class="n">std</span><span class="p">)</span>

<span class="n">non_cat_vars</span> <span class="o">=</span> <span class="p">[</span><span class="s1">&#39;accommodates&#39;</span><span class="p">,</span> <span class="s1">&#39;bedrooms&#39;</span><span class="p">,</span> <span class="s1">&#39;beds&#39;</span><span class="p">,</span> <span class="s1">&#39;number_of_reviews&#39;</span><span class="p">,</span> <span class="s1">&#39;host_listing_count&#39;</span><span class="p">,</span> <span class="s1">&#39;availability_30&#39;</span><span class="p">,</span> <span class="s1">&#39;minimum_nights&#39;</span><span class="p">,</span> <span class="s1">&#39;bathrooms&#39;</span><span class="p">]</span>
<span class="k">for</span> <span class="n">col</span> <span class="ow">in</span> <span class="n">non_cat_vars</span><span class="p">:</span>
    <span class="n">df</span><span class="p">[</span><span class="n">col</span><span class="p">]</span> <span class="o">=</span> <span class="n">df</span><span class="p">[</span><span class="n">col</span><span class="p">]</span><span class="o">.</span><span class="n">astype</span><span class="p">(</span><span class="nb">float</span><span class="p">)</span>
    <span class="n">df</span><span class="p">[</span><span class="n">col</span><span class="p">]</span> <span class="o">=</span> <span class="n">standardize_col</span><span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="n">col</span><span class="p">])</span>

<span class="n">df</span><span class="o">.</span><span class="n">head</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt output_prompt">Out[17]:</div>

<div class="output_html rendered_html output_subarea output_execute_result">
<div>
<table border="1" class="dataframe">
  <thead>
    <tr style="text-align: right;">
      <th></th>
      <th>id</th>
      <th>host_id</th>
      <th>accommodates</th>
      <th>bathrooms</th>
      <th>bedrooms</th>
      <th>beds</th>
      <th>minimum_nights</th>
      <th>availability_30</th>
      <th>number_of_reviews</th>
      <th>host_listing_count</th>
      <th>...</th>
      <th>40-49</th>
      <th>50-59</th>
      <th>60-69</th>
      <th>70-79</th>
      <th>80-84</th>
      <th>85-89</th>
      <th>90-94</th>
      <th>95-100</th>
      <th>No Reviews</th>
      <th>price</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th>0</th>
      <td>1069266</td>
      <td>5867023</td>
      <td>-0.520266</td>
      <td>-0.331542</td>
      <td>-0.407402</td>
      <td>-0.493039</td>
      <td>0.173906</td>
      <td>0.390393</td>
      <td>2.716107</td>
      <td>-0.355961</td>
      <td>...</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>1</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>160.0</td>
    </tr>
    <tr>
      <th>2</th>
      <td>2061725</td>
      <td>4601412</td>
      <td>-0.520266</td>
      <td>-0.331542</td>
      <td>-0.407402</td>
      <td>0.381672</td>
      <td>0.173906</td>
      <td>-0.965897</td>
      <td>1.295605</td>
      <td>0.933455</td>
      <td>...</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>1</td>
      <td>0</td>
      <td>58.0</td>
    </tr>
    <tr>
      <th>3</th>
      <td>44974</td>
      <td>198425</td>
      <td>-0.520266</td>
      <td>-0.331542</td>
      <td>-0.407402</td>
      <td>-0.493039</td>
      <td>2.889531</td>
      <td>-1.205242</td>
      <td>0.822104</td>
      <td>-0.355961</td>
      <td>...</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>1</td>
      <td>0</td>
      <td>185.0</td>
    </tr>
    <tr>
      <th>4</th>
      <td>4701675</td>
      <td>22590025</td>
      <td>-0.520266</td>
      <td>-0.331542</td>
      <td>-0.407402</td>
      <td>0.381672</td>
      <td>-0.601986</td>
      <td>1.108429</td>
      <td>-0.493176</td>
      <td>-0.355961</td>
      <td>...</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>1</td>
      <td>0</td>
      <td>195.0</td>
    </tr>
    <tr>
      <th>5</th>
      <td>68914</td>
      <td>343302</td>
      <td>1.690892</td>
      <td>-0.331542</td>
      <td>1.266328</td>
      <td>1.256383</td>
      <td>-0.214040</td>
      <td>-0.407424</td>
      <td>0.295992</td>
      <td>0.073844</td>
      <td>...</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>0</td>
      <td>1</td>
      <td>0</td>
      <td>165.0</td>
    </tr>
  </tbody>
</table>
<p>5 rows × 225 columns</p>
</div>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[18]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># visualize distribution of price (target variable)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">hist</span><span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s1">&#39;price&#39;</span><span class="p">],</span> <span class="n">bins</span><span class="o">=</span><span class="mi">50</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s2">&quot;Histogram of Pricing&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xlabel</span><span class="p">(</span><span class="s2">&quot;Pricing (USD) Per Day&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s2">&quot;Frequency&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
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
ZfX/AUE/76Iix0QIAAAAAElFTkSuQmCC
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>We see the distribution for pricing is strongly skewed right. This again makes sense as a majority of the listings on Airbnb are single individual listings. Additionally, Airbnb does strongly cater to travelers who are looking for cheaper places to stay for short durations of time. There are of course listings with a high pricing as well; intuitively this matches with hosts that are listing a high value property such as an entire house. To compensate for the skewed right distribution, we will log the response variable and store the results in a new panda column. We will then run our baseline models on both the logged and original response and compare the results.</p>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[19]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># log transform the response &#39;price&#39;</span>
<span class="n">df</span><span class="p">[</span><span class="s1">&#39;price_log&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">df</span><span class="p">[</span><span class="s1">&#39;price&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">apply</span><span class="p">(</span><span class="k">lambda</span> <span class="n">x</span><span class="p">:</span> <span class="n">math</span><span class="o">.</span><span class="n">log</span><span class="p">(</span><span class="n">x</span><span class="p">))</span>
</pre></div>

</div>
</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[20]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># visualize distribution of price (target variable)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">hist</span><span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s1">&#39;price_log&#39;</span><span class="p">],</span> <span class="n">bins</span><span class="o">=</span><span class="mi">30</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">title</span><span class="p">(</span><span class="s2">&quot;Histogram of Pricing Log-Transformed&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">xlabel</span><span class="p">(</span><span class="s2">&quot;Pricing (USD) Per Day&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">ylabel</span><span class="p">(</span><span class="s2">&quot;Frequency&quot;</span><span class="p">)</span>
<span class="n">plt</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
AAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmYXFWZx/FvaAkkpmlJ7ICCEon4gorBoDg4mYRVhFHA
DRxkBNREEBCYgVFQZESDMmERRKNiZHdkkWGRYVFBSEQRIojR+CMaQgZFCOkmSZNAlu7549yGSlPd
fSqklu7+fZ4nT6ruPXXvW1W3671nuecO6+rqwszMrD+b1DsAMzMbGJwwzMwsixOGmZllccIwM7Ms
ThhmZpbFCcPMzLK8ot4BWPVERCfwakltJcuOAD4s6f0R8WVggaQr+9jG6cBDkm6ufsQbV0RMAH4M
PAN8UNLiknWLgFXFP4BNgZ9K+rcy23kNcK2kSX3s69NAi6T/2ghxbwfMk9T8crfVy/avBcYDw4AJ
wO+BTqBN0t7V2GfJvvcFLgaeBCZLer6a++sjjl2B6yS9oR77H6icMAa33i6y6QKQdEbGNvYC/rDR
IqqtA4E7JU0rs64LOEzSgwAR8Qrgnoj4jKRvlxaU9ATQa7Ioynx3I8VcGl9VSPpI9+OIWAfsIam9
Wvvr4aPA9ySdVaP99cUXoVXICWNwG9bXyoi4BPi9pPOK2sZBwGpgKXAU8EHgHcCM4oflLuBbwC6k
M9LbgFMldUbEAcDXgbXA74B9gH8E9gQ+CbySdKb/fmAmsAMwGlhB+uFeEBF3AXNJSaoVuBDYCpgC
jAQOkfSS5FXUgj4KrAEeAY4H9gY+A2wSESMk/Wtfn4+ktRExG9ixOMOfDcwHtgOOJNU+miOiCZgB
/HOxv3uBY4HTgDGSPhsRjwKXFjG8DrhG0ueKWD8PfAJYXuzj4ErOciNiCyr8DkprVr18Bi98DmXe
+xTS93cQsBnpezxZ0o0RcQYwDnhNUfYp4FBJf4+IY4BPA88DzwFHF5/ZwcDKiGgBvgCcT/q+1wL3
ASdJerb4DO8Ddi4p98NiG6OB/yQdX7uSjtkDi/2+FriI9LlvCvxI0teL93YMcCLpOJyX94lbKfdh
DH53RcRvi38PAmf2LBAR2wInAO+UtBtwB7Bbcab9AMUPBOkH/GlJO5MSyQTg5IgYDVxO+uGfSEos
ry3ZxZtJzQ97A/sD7ZLeLWnHYvvHlZTdrtjGh4CzSTWEdwK3kxJBz9iPAvYDdpW0C6k2dKmkHwLf
Aa7uJVn03M5rScnszmLRtsCXixif4MWz0WOBtwM7S3or0AwcUmaTr5Q0mfSjdnxEbBcR+wEfL2J9
R/HaSs9yN/Q7qETpe9+M9IM+ufh8v8j6x9Ak4EOSdiL9EH86IjYh/cDvJ+ldwPdIiesc4Cbg/CKB
ng5sTfosJwDdybjb7yW9RdINxfPNihhOLrZ5fvH8cVJSB7gCmFUcM+8C9o2IDxfNk2cAk4qYVm/g
ZzOkOWEMfntImlj8ezvwpTJl/go8BDwYETOA30m6qWR99xno/qSzNyStIf0gHwBMBv4gaV6x7nLS
GXS3hyU9W6z7MXBZRBwXEd8A9gBGlZS9vvj/L6Qf09tLno8uE/t7gUskPVc8vwDYq2hi6s9VRSL9
HXAjqamk+8dpDfDrMq/ZG7hC0uri/fyLpKvKlLuxWP83Unv9aNLnd62kFUWZb2XE2FMl38GK3jbS
jxfee1E7ORI4PCK+RqoplH5fv+j+boEHgdGSOoFrgF9FxDdJx8KsMvt5L/CdojzAN4v31212j/I/
Lv7/C/BE93stno+OiJGkGtFXipOjX5NqGruQvrfbJS0pXvO9fj8Fewk3SQ1+fTZLAUjqAvYoOgL3
Ac6PiDslndSjaM8TjE1Ix9CaMutKz5w7uh8UzQJTST8OVwFtpGaNbut1gkpa10/4PffbVMTU7/um
pA+jjOdLfshKraXkvUXE2DIxwIud6d2GFa8tjau/91ZOz/fV13fQWcR4Mak20kX6ge7vx/KF9x4R
byclv/NIyftuoLSPp/R9dnXHJ+njEfFm0vH0OVKz1sFlYi/VRGpG6tbRY33psbGmTNxNxf+7d3em
R8QYUpPYNNb/7NaWeb31wzUMIyLeFhHzgPmSziY1J0woVq/lxT/i20hNMkTEZqQ/wjtI7fg7RMRb
i3UfAloo39zyHlKN4BJgAakZqKlMOcj70b8dOKo4uwT4LHB3cfbdn76239u6nwGHRcTwoullJqn/
JMctwIeKfgiAT9F7k1Rv+7+dCr8DSVMlvb2oZeacWZfuezJwv6RvAPcAH6D374ti32MiYjGwVNKF
pGast/XyXo6OiFcUn+VniveyQYqa269JTVZExKuAX5IGP/wUeE/R9Aipj84q5BrG4JbVPi7p4Yi4
GpgbER3ASl7sL7gZOCcihpN+jC+KiN+TksitwFlFh/FhwBVF5/hcUqJZWWZ35wDfK/oeusvu3Eu8
OfHPIrW5/yYihgF/Bg7PeF1/2+5t/XdJHbxzi+d3kfoVTu/jtd2j0u6KiO8D90bESlJ/S7nPCGBk
RHQ36w0rtrE7qa/pmy/zO+jvfZYu+29SkvsD6Qz/56Tmn1f2tkFJSyPiK8CdEbGKVBv4ZJltf5XU
Z/EQKQn9hhePuw05FgA+RjpGHyZ9PldJ+m+AiPiPIqblxb6sQsM8vbm9XBHRTDqLPEPSc0Uzxk8k
bVPn0BpK0eT3bknfLJ6fRBpc8C8bYdv+Dqzqql7DKNp4HyC1Za4jDTfsJF2Y1F21nkqqWq8Bpku6
JSI2B64ExpI6zY6QtLTa8VrlJK2IiNXAAxGxhjQC5SP9vGwoegT4XERMI50xP0Y67l82fwdWC1Wt
YRQjVa4hDas8kFT9PEfS7IiYSWoT/zWpfXEiaaz9HNLY6uOAZklnRsShpI6sE6sWrJmZ9anand7n
kDoF/0Zqh50oqXuo3K3AvsBuwBxJayUtJ3WETiCN776tpOw+VY7VzMz6ULWEERFHAk9J+ikvjroo
3d8KYAvSxUvLSpZ3kEZ3lC7vLmtmZnVSzT6Mo4DOYrKxCaSrUFtL1jeTrgxdzvrJoBloL5Y39yjb
r66urq5hw3JGY5qZWYl+fzirljAkTel+HBF3kq4QnRERkyXdQ7qi807gfmB6MWxzBLAjaZ6Xe0lX
sD5Q/N/zqs+yhg0bxpIlG3qBa/21tjYP2PgHcuzg+OvN8ddXa2v/kyPX+sK9k4EzI+KXpDHS10l6
kjSOfQ7poqjTimkXZgJvLSaE+xTw5RrHamZmJWpy4Z6kvUqe7lFm/Sx6zDUjaRXlJ3UzM7M68NQg
ZmaWxQnDzMyyOGGYmVkWJwwzM8vihGFmZlmcMMzMLIsThpmZZXHCMDOzLE4YZmaWxQnDzMyyOGGY
mVkWJwwzM8vihGFmZllqMlutWSNbt24dixYtpL19FG1tHf2WHzdue5qammoQmVljccKwIW/RooWc
MOMmRraM7bfsymVPccEpBzJ+/A41iMyssThhmAEjW8Yyastt6h2GWUNzH4aZmWVxwjAzsyxOGGZm
lsUJw8zMslS10zsiNgEuBgLoBI4GhgM/AR4pis2UdG1ETAWmAWuA6ZJuiYjNgSuBscBy4AhJS6sZ
s5mZlVftUVLvB7okTYqIKcBZwM3AuZLO7y4UEVsBxwMTgZHAnIi4AzgGeFjSmRFxKHA6cGKVYzYz
szKqmjAk3RgRNxdPxwHtwK5ARMTBpFrGScBuwBxJa4HlEbEAmABMAs4uXn8rKWGYmVkdVL0PQ1Jn
RFwKXABcBdwHnCxpCrAQOAPYAlhW8rIOoAVoLlm+oihnZmZ1UJML9yQdGRFjgd8Au0t6olh1A3Ah
cDfrJ4NmUm1kefG4e9kzOftrbW3uv1ADG8jxD8TY29tHVVR+9OhRDfs+GzWuXI6/sVW70/twYFtJ
XweeI3V8Xx8Rn5V0P7A3MBe4H5geEcOBEcCOwDzgXuAA4IHi/9k5+12yZMXGfis109raPGDjH6ix
58wf1bN8I77Pgfr5d3P89ZWT7Kpdw7geuCQi7i72dQLwf8BFEbEa+DswTVJHRFwIzAGGAadJWh0R
M4HLImI28DxwWJXjNTOzXlS703slcGiZVZPKlJ0FzOqxbBVwSHWiMzOzSvjCPTMzy+KEYWZmWZww
zMwsixOGmZllccIwM7MsThhmZpbFCcPMzLI4YZiZWRYnDDMzy1KTyQfNNpZ169axaNHCrLLjxm1P
U1NTlSMyGzqcMGxAWbRoISfMuImRLWP7LLdy2VNccMqBjB+/Q40iMxv8nDBswBnZMpZRW25T7zDM
hhz3YZiZWRbXMKzuKumXWLz4sSpHY2a9ccKwusvtlwBY+vh8xmy7Uw2iMrOenDCsIeT2S6xc9mQN
ojGzctyHYWZmWZwwzMwsixOGmZllccIwM7MsVe30johNgIuBADqBo4HngUuL5/MkHVuUnQpMA9YA
0yXdEhGbA1cCY4HlwBGSllYzZjMzK6/aNYz3A12SJgGnA2cB5wGnSZoCbBIRB0XEVsDxwO7Ae4Gv
RcSmwDHAw5ImA1cU2zAzszqoasKQdCOp1gCwHdAOTJQ0u1h2K7AvsBswR9JaScuBBcAEYBJwW0nZ
faoZr5mZ9a7q12FI6oyIS4GDgY+QEkS3FcAWQDOwrGR5B9DSY3l32X61tja/vKDrbCDHvyGxt7eP
qkIkMHr0qKx4Kt1/7nbroVHjyuX4G1tNLtyTdGREjAXuB0aUrGoGniH1T2zRY3l7sby5R9l+LVmy
4uWGXDetrc0DNv4Njb2traMK0aTt5sRT6f5zt1trA/nYAcdfbznJrqpNUhFxeER8vnj6HLAOeCAi
phTL9gdmkxLJpIgYHhEtwI7APOBe4ICi7AFFWTMzq4Nq1zCuBy6JiLuLfX0W+BPw/aJTez5wnaSu
iLgQmAMMI3WKr46ImcBlETGbNLrqsCrHa2ZmvahqwpC0Eji0zKo9ypSdBczqsWwVcEhVgjMzs4r4
wj0zM8vihGFmZlmcMMzMLIsThpmZZfENlMwq0NXZmX2b2HHjtqepqanKEZnVjhOGWQVWrVjCuVc/
zciWJ/ost3LZU1xwyoGMH79DjSIzqz4nDLMK5d5O1mywcR+GmZllccIwM7MsThhmZpbFfRg2KFUy
mim3nNlQ54Rhg1LuaCaApY/PZ8y2O9UgKrOBzQnDBq3c0Uwrlz1Zg2jMBj73YZiZWRYnDDMzy+KE
YWZmWZwwzMwsixOGmZllccIwM7MsVRtWGxGvAH4AjAOGA9OB/wN+AjxSFJsp6dqImApMA9YA0yXd
EhGbA1cCY4HlwBGSllYrXjMz61s1r8M4HHha0scjYkvgIeDLwLmSzu8uFBFbAccDE4GRwJyIuAM4
BnhY0pkRcShwOnBiFeM1M7M+VDNhXANcWzzehFR72BXYMSIOJtUyTgJ2A+ZIWgssj4gFwARgEnB2
8fpbSQnDzMzqpGp9GJJWSno2IppJieOLwG+AkyVNARYCZwBbAMtKXtoBtADNJctXFOXMzKxOqjo1
SES8DrgeuEjSjyKiRVJ3ErgBuBC4m/WTQTPQTuq3aC5Z9kzufltbm/sv1MAGcvwbEnt7+6gqRFJ/
o0ePqvl3OZCPHXD8ja6and5bAbcDx0q6q1h8e0QcJ+kBYG9gLnA/MD0ihgMjgB2BecC9wAHAA8X/
s3P3vWTJio32PmqttbV5wMa/obG3tXVUIZr6a2vrqOl3OZCPHXD89ZaT7KpZwzgVeBVwekR8Cegi
9Vl8IyJWA38HpknqiIgLgTnAMOA0SasjYiZwWUTMBp4HDqtirGZm1o+qJQxJJ1J+VNOkMmVnAbN6
LFsFHFKd6MzMrFK+cM/MzLJk1TAi4n+BS4AbJK2pbkhmZtaIcmsYXwfeCyyIiG9FxDurGJOZmTWg
rBqGpHuAeyJiBPBh4McRsRz4Pml6j+erGKOZmTWA7D6MiNgDuAg4C7gNOAHYGripKpGZmVlDye3D
eIx0ZfYlwHHFCCYi4hek6yjMzGyQy61h7AUcKulygIh4I4CkdZImVis4MzNrHLkJ459JzVCQphu/
OSKmVSckMzNrRLkJYxrwTwCSHiPNOnt8tYIyM7PGk5swNiVNz9FtNWmqDzMzGyJypwa5AbgzIq4p
nn8Qj44yMxtSsmoYkj5Hmoo8gO2BCyV9sZqBmZlZY6lkLqn5pLvo3QC0RcTk6oRkZmaNKPc6jG8B
7wf+UrK4izTc1szMhoDcPoz3ANF9wZ6ZmQ09uU1SC0k3NzIzsyEqt4bRBvwxIu4FnuteKOkTVYnK
zMwaTm7CuI0Xr/Q2M7MhKHd688siYhzwFuB24HWSHq1mYGZm1lhyR0kdCnwRGAG8G/hVRJws6cpq
BmcD17p161i0aGFW2cWLH6tyNGa2MeQ2SX2OlCjukfRURLwd+BnQa8KIiFcAPwDGAcOB6cAfgUuB
TmCepGOLslNJ81WtAaZLuiUiNi+2PxZYDhwhaWmlb9DqY9GihZww4yZGtoztt+zSx+czZtudahCV
mb0cuaOk1kla0f1E0hOkH/2+HA48LWky6fauFwHnAadJmgJsEhEHRcRWpIkMdy/KfS0iNgWOAR4u
Xn8FcHoF78sawMiWsYzacpt+/41oHl3vUM0sQ24N4w8RcRywaUTsAnwGeKif11wDXFs8bgLWAhMl
zS6W3Uq6vqMTmCNpLbA8IhYAE4BJwNklZZ0wzMzqKLeGcSywDbCK1My0nJQ0eiVppaRnI6KZlDi+
wPrXcqwAtgCagWUlyzuAlh7Lu8uamVmd5I6SehY4tfiXLSJeB1wPXCTpRxHxXyWrm4FnSMlnix7L
24vlzT3KZmltbe6/UAMbyPF3x97ePqrOkdTf6NGjav5dDuRjBxx/o8sdJdXJS+9/8YSkbft4zVak
IbjHSrqrWPxgREyWdA+wP3An6Z7g0yNiOGkU1o7APOBe4ADggeL/2WRasmRF/4UaVGtr84CNvzT2
traOOkdTf21tHTX9LgfysQOOv95ykl1uDeOFpquiQ/pgUid1X04FXgWcHhFfIiWcE4BvFtuYD1wn
qSsiLgTmkJqsTpO0OiJmApdFxGzSzZsOy4nVzMyqI7fT+wWS1gDXRsQX+il3InBimVV7lCk7C5jV
Y9kq4JBK4zMzs+rIbZL6eMnTYaQrvldXJSIzM2tIuTWMPUsedwFPA4du/HDMzKxR5fZhHFXtQMzM
rLHlNkk9yktHSUFqnuqStP1GjcrMzBpObpPUD0kjlS4mzff0MeCdpIvxzMxsCMhNGPtJekfJ8wsi
Yq4kTzNqZjZE5E4NMiwi9ul+EhHvI12JbWZmQ0RuDWMacHlEbE3qy/gTcETVojIzs4aTO0pqLvCW
iHg18Jwkz/tgZjbEZDVJRcR2EfFT4FfAqIi4s7hlq5mZDRG5fRjfBWaQph5/Evhv4PJqBWVmZo0n
N2G8WtIdAJK6JF2M709hZjak5CaMVRGxLcXFexExiXRdhpmZDRG5o6ROAn4CjI+Ih4DRwEeqFpWZ
mTWc3ISxFenK7jeR7s/9J0merdbMbAjJTRj/JekW4A/VDMbMzBpXbsL4S0T8ALgPWNW9UJJHSpmZ
DRF9dnpHxDbFw6WkmWn/gXRvjD0pc+c8MzMbvPqrYdwMTJR0VET8u6RzaxGU2UDX1dnJ4sX5c3OO
G7c9TU1NVYzI7OXrL2EMK3n8McAJwyzDqhVLOPfqpxnZ8kS/ZVcue4oLTjmQ8eN3qEFkZhuuv4RR
etOkYb2W6kNEvAv4uqQ9I2IX0vDcR4rVMyVdGxFTSRMcrgGmS7olIjYHrgTGkmbGPULS0g2Jwawe
RraMZdSW2/Rf0GyAyO30hvJ33OtTRJwC/CtpShGAXYFzJZ1fUmYr4HhgIjASmBMRdwDHAA9LOjMi
DgVOB06sNAYzM9s4+ksYb4mIhcXjbUoe596a9c/AB4Ariue7Am+KiINJtYyTgN2AOZLWAssjYgEw
AZgEnF287lZSwjAzszrpL2G86eVsXNL/RMR2JYvuAy6W9GBEnAqcATwELCsp0wG0AM0ly1fguavM
zOqqz4RRhVuw3iCpOwncAFwI3M36yaAZaCf1WzSXLHsmdyetrc39F2pgAzn+7tjb20fVOZKBZfTo
URvlex/Ixw44/kZXSR/GxnB7RBwn6QFgb2AucD8wPSKGAyOAHYF5wL3AAcADxf+zc3eyZMmKjR13
zbS2Ng/Y+Etjb2vzPbYq0dbW8bK/94F87IDjr7ecZFfrhHEM8M2IWA38HZgmqSMiLgTmkPpGTpO0
OiJmApdFxGzSzLiH1ThWMzMrUfWEUTRrvbt4/CCpM7tnmVnArB7LVgGHVDs+MzPLk3s/DDMzG+Kc
MMzMLIsThpmZZXHCMDOzLE4YZmaWxQnDzMyyOGGYmVkWJwwzM8tS6yu9bYBbt24dixYtLLuuvX3U
C1OCVHK3OTMbGJwwrCKLFi3khBk3MbJlbJ/llj4+nzHb7lSjqMysFpwwrGI5d5JbuezJGkVjZrXi
PgwzM8vihGFmZlmcMMzMLIsThpmZZXGnt1mddXV2VjQMedy47WlqaqpiRGblOWGY1dmqFUs49+qn
GdnyRL9lVy57igtOOZDx43eoQWRm63PCMGsAOUOVzerNfRhmZpbFCcPMzLJUvUkqIt4FfF3SnhEx
HrgU6ATmSTq2KDMVmAasAaZLuiUiNgeuBMYCy4EjJC2tdrxmZlZeVWsYEXEKcDGwWbHoPOA0SVOA
TSLioIjYCjge2B14L/C1iNgUOAZ4WNJk4Arg9GrGamZmfat2k9SfgQ+UPN9V0uzi8a3AvsBuwBxJ
ayUtBxYAE4BJwG0lZfepcqxmZtaHqiYMSf8DrC1ZNKzk8QpgC6AZWFayvANo6bG8u6yZmdVJrYfV
dpY8bgaeIfVPbNFjeXuxvLlH2Sytrc39F2pgjRx/e/uoeocw5I0eParXY6SRj50cjr+x1Tph/DYi
Jku6B9gfuBO4H5geEcOBEcCOwDzgXuAA4IHi/9nlN/lSS5as2Nhx10xra3NDx999gySrn7a2jrLH
SKMfO/1x/PWVk+xqPaz2ZODMiPglsClwnaQngQuBOcDPSJ3iq4GZwFsjYjbwKeDLNY7VzMxKVL2G
Iekx4N3F4wXAHmXKzAJm9Vi2Cjik2vGZmVkeX7hnZmZZnDDMzCyLE4aZmWVxwjAzsyxOGGZmlsUJ
w8zMsjhhmJlZFicMMzPL4oRhZmZZnDDMzCyLE4aZmWVxwjAzsyxOGGZmlsUJw8zMsjhhmJlZFicM
MzPL4oRhZmZZan1Pb2tA69atY9GihVllFy9+rMrRmFmjcsIwFi1ayAkzbmJky9h+yy59fD5jtt2p
BlGZWaNxwjAARraMZdSW2/RbbuWyJ2sQjZk1orokjIiYCywrnj4KnAVcCnQC8yQdW5SbCkwD1gDT
Jd1S+2jNzAzqkDAiYjMASXuVLLsROE3S7IiYGREHAb8GjgcmAiOBORFxh6Q1tY7ZzMzqU8OYALwy
Im4HmoAvABMlzS7W3wq8h1TbmCNpLbA8IhYAbwPm1iFmM7Mhrx7DalcCMyTtBxwDXAUMK1m/AtgC
aObFZiuADqClVkGamdn66lHDeAT4M4CkBRGxlNTs1K0ZeAZYTkocPZf3q7W1eeNEWie1jr+9fVRN
92cvz+jRo3o9Rnzs19dAj78/9UgYnwB2Bo6NiNeSksIdETFF0t3A/sCdwP3A9IgYDowAdgTm5exg
yZIVVQm8Flpbm2sef1tbR033Zy9PW1tH2WOkHsfOxuT46ysn2dUjYcwCLomI2aR+iiOBpcD3I2JT
YD5wnaSuiLgQmENqsjpN0uo6xGvWMLo6O3u9eLK9fdR6yX/cuO1pamqqVWg2BNQ8YRSjnA4vs2qP
MmVnkRKMmQGrVizh3KufZmTLE32WW7nsKS445UDGj9+hRpHZUOAL98wGmNyLLM02NicMs0Gor6ar
ctx8ZTmcMMwGodymK3DzleVzwjAbpNx0ZRub74dhZmZZnDDMzCyLE4aZmWVxwjAzsyxOGGZmlsUJ
w8zMsjhhmJlZFicMMzPL4oRhZmZZfKX3ILVu3ToWLVqYVbaSOYfMbOhywhikFi1ayAkzbmJky9h+
yy59fD5jtt2pBlGZ2UDmhDHA5NYcFi9+LHsuoZXLntwYodkAVcnMtuvWrQOG0dTUf2u2Z8AdfJww
BpjcmoNrDZarkpltlz4+nxHNY/o9/p595u+c/NG38/rXb5cVw7hx22eVs/pywhiAcmoOrjVYJSqp
jeYef+de/buKplffeuuJ2fFafThhmFlVeHr1wcfDas3MLEtD1zAiYhjwbWAC8BzwKUl5Y0XNbNCp
ZLi4O903voZOGMDBwGaS3h0R7wLOK5aZ2SDRPUpr9OhRtLV19Fl28eLHir6Rjd/p7uTSv0ZPGJOA
2wAk3RcR76hzPFVRetbU3t73H40vsrPB5oVRWrfljdIas+1OG7XTvZLk0tew4tK/3UqGH1dSFuqb
3Bo9YWwBLCt5vjYiNpHUubF3dMrn/4OOFX2f3QCMah7F0VOnbtR9L178GF+9+KdsPmp0v2WXPbmQ
V73mTf2WW7WiDRiWtf9qlPX+vf9KtjmieUxWWUijqjbmNp/raK/o72+zV76q37K55Sot+1xHG1+c
um92zSnX+PE7ZJUb1tXVtVF3vDFFxLnAryRdVzxfLOn1dQ7LzGxIavRRUr8EDgCIiH8Afl/fcMzM
hq5Gb5L6H2DfiPhl8fyoegZjZjaUNXSTlJmZNY5Gb5IyM7MG4YRhZmZZnDDMzCxLo3d6Z4mIVwA/
AMYBw4Hpkm6ua1AViIhNgIuBADqBoyX9sb5RVS4ixgIPAPtIeqTe8VQiIuby4jU/j0r6ZD3jqVRE
fB44ENgU+LakS+ocUraIOAI4EugCRpCmAtpa0vJ6xpWj+O25jPTbsxaYOpCO/YgYDlwCbE86/o+V
9Jfeyg+WGsbhwNOSJgP7AxfVOZ5KvR/okjQJOB04q87xVKz4w/kOsLLesVQqIjYDkLRX8W+gJYsp
wO6S3g3sAbyuvhFVRtJlkvaUtBcwFzh+ICSLwgFAk6R/BL7CwPvbnQqskLQ78FngW30VHiwJ4xrS
Dy2k97Qhh3KNAAAHK0lEQVSmjrFUTNKNwLTi6TigvX7RbLBzgJnA3+odyAaYALwyIm6PiJ8V85YN
JPsB8yLiBuAm4Cd1jmeDFFP/vFnSrHrHUoFHgFcUE6W2AKvrHE+l3gzcClDUjPq869qgSBiSVkp6
NiKagWuBL9Q7pkpJ6oyIS4ELgKvqHE5FIuJI4ClJPyV3PojGshKYIWk/4BjgqqKZcKB4NbAr8GFS
/D+sbzgb7FTgy/UOokIdwBuAPwHfBS6sbzgVewh4H7xwcfRri+RX1kD6o+hTRLwOuBO4TNLV9Y5n
Q0g6EngT8P2IGFHncCpxFOkCy7uAXYDLi/6MgeIRiiQtaQGwFHhNXSOqzFLgdklri7PE5yLi1fUO
qhIR0QK8SdLd9Y6lQicBt0kKUk318qJfYKD4AbAiIu4BDgLmSur14rxBkTAiYivgduA/JF1W73gq
FRGHF52WkO77sY7U+T0gSJpStEHvSTpj+bik/meIaxyfAM4FiIjXAs1A/9OcNo45wHvhhfhHkpLI
QDIZ+Hm9g9gAbbw4WOIZ0kCigTRP+juBnxf9v9cBfd5sZFCMkiJVZV8FnB4RXyKNtthf0vP1DSvb
9cAlEXE36Ts5YQDF3tNAnDpgFunzn01K1J+oxozI1SLploj4p4j4DalJ8DN9nSU2qKCfH6sG9Q3g
B8UZ+qbAqZJW1TmmSiwAvhIRXyD1nfY54MNTg5iZWZZB0SRlZmbV54RhZmZZnDDMzCyLE4aZmWVx
wjAzsyxOGGZmlmWwXIdhg0REbEe68voPxaLhwF+BoyT9rUfZ1wAXS3pfL9vqc32FcY0CLpX04Yi4
BLhL0uUl688gTSB5ZjHrwLeA7UjXRfyRNKHekmJm1vOAx0gnbJsBNwOfk9QVEQcD20h6ySRwxZX0
2wIritcOA74q6doNfE9nAEeTLlLchHQdwaWSZmzI9mzwcw3DGtFfJU0s/r2VNIPpS2YglvREX8mg
v/UVOoM0G2+O7wJXSZog6W2kq99nlqy/sXhvu5DmgHo7xRxKkm4APtjH1B6fKHntR0kXHL6caUBm
lmxvMvCvEXHUy9ieDWKuYdhAcA9pCngi4lHgPtK8PR8HrpH0hoh4PWle/7HAs8CnSGfivyjWX0Ka
wmFXYBvgTEmXRsQWwOXAeOBR0hn8wZIWd++8mNTyfZJOyYx3a9L0HN0uAt5RrqCklRFxGvC/wJeK
xdcDxwH/WeYlL0wMJ2l+RHQA20XEKlKt5i2kqSnOlnR1UaM5AhgD3Czpi70FLWlpRHwF+DwpEb2V
NJneK0mf67nFPhYC+0r6c0SMJE2890ZJA22mVquQaxjW0CJiU+BQ0nxJ3W6RtBPwFC9ORfJt4FpJ
O5PO1rt/GEunMthW0j+RbjR0TrHsDOBPJa/buUwYewG/qyDsU4EZEbG4mIH4n4G+JtWbB4wpqSnc
U8TYp4jYj/Q3PJ/0fh+Q9E5gCvDFiBhXFN0G2KWvZNEjligefxL4iqR3kT6Ds4opRy4l3YMG4EOk
RORkMQQ4YVgj2iYifhsRD5KacyD9CHf7TZnXTAGuBJB0q6SPlilzR7F+HrBlsWwf4Ipi+Vzg4TKv
2wF4vOR5uXmmhnUvl3Q78FpSLecp4Gzgx2Ve062r+Nc9B9FjwBt7Kfv94rP5Pekz+YiklcX7OLr4
zO4h3bnuLcVrflvB3FKlcfw7MKKYGHM6qaYBKWEcVjw+onhuQ4CbpKwR/VXSxD7Wl5vcbb2bZkXE
Trz07n/PlXndOtY/cSp3L4BO0u03u7WTJrssNRb4Q0RsCZwu6d9ICeqOiPgq8EREjCmzbUjNa49L
erbkvfQ2+eEnJc0us7wJOFzSQ/DC7XLbgI9R/vPqzQRSJz2ke8ssJXXK/4hU00PSYxHxWER8ABgr
6f4Ktm8DmGsY1og25CZMd5M6gYmIfUkdz31tq3v5TynOliNiZ9JZec+z8b+Q7oTY7efAR4v2eyJi
a1Kz089J/STvj4jDS8q/Efg76Qd8vZiK+0Ccyfqd+m8A/txP3D3dCXym2OZrSDWlnFu1lsbyGlKt
pTuWvYEvSbqZdOtXSm6ucwmpf+OFkWI2+LmGYY2or+aT3tYdT2quOZbU6f3JHuV7vq77+VdJHbwP
kRLD33npGfnPKO6XAanJKyLeBtwXEd33LjlF0p8AIuIA4PyiA3kl6ba17yuGzUJKKL8tNtdE6nsp
Hcq6J3BjBe8dUv/Lt4umqk2AkyU9GhGT+3gNwKcj4qCS598pGab7n8AvI6IdELCIlMwWkjrmL6Zo
BrShwdOb25AWER8DFkr6VXH9xC8kjS9T7hzStRe31CCm2cAHJD1d7X1tqCIpTpN0cL1jsdpxDcOG
uj8B34mIJlI/xbReyp1JaoapasKIiA+RahyNnCzOJ90Hev96x2K15RqGmZllcae3mZllccIwM7Ms
ThhmZpbFCcPMzLI4YZiZWRYnDDMzy/L/VJKwZTghmlYAAAAASUVORK5CYII=
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[21]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># qq plot for log-transformed pricing</span>
<span class="n">stats</span><span class="o">.</span><span class="n">probplot</span><span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s1">&#39;price&#39;</span><span class="p">],</span> <span class="n">dist</span><span class="o">=</span><span class="s2">&quot;norm&quot;</span><span class="p">,</span> <span class="n">plot</span><span class="o">=</span><span class="n">pylab</span><span class="p">)</span>
<span class="n">pylab</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
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
NkfxT+8vtJ0AAAAASUVORK5CYII=
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[22]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># qq plot for log-transformed pricing</span>
<span class="n">stats</span><span class="o">.</span><span class="n">probplot</span><span class="p">(</span><span class="n">df</span><span class="p">[</span><span class="s1">&#39;price_log&#39;</span><span class="p">],</span> <span class="n">dist</span><span class="o">=</span><span class="s2">&quot;norm&quot;</span><span class="p">,</span> <span class="n">plot</span><span class="o">=</span><span class="n">pylab</span><span class="p">)</span>
<span class="n">pylab</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>

</div>
</div>
</div>

<div class="output_wrapper">
<div class="output">


<div class="output_area"><div class="prompt"></div>


<div class="output_png output_subarea ">
<img src="
AAALEgAACxIB0t1+/AAAIABJREFUeJzt3Xl8VPX1//HXhAkBQhSwifwQraDNsbjvSxXUuqG0Lm1F
W62oVKyiYpUqiFrFpQpVUECxVlFbd43W5avWBaxaFESksnxoXaqCQMSIQAhZZn5/3AmEMJm5E3Jn
JjPv5+PBw8zkzr1nrsnJZ8793PMJRaNRREQk9xRkOgAREQmGEryISI5SghcRyVFK8CIiOUoJXkQk
RynBi4jkqHCmAxABMLPvAx8D82JPhWL/vcM5d3+K+3oDuNM593QKr7kW2MY5d3Gc7z0PXA5sC0xy
zu1uZtcB/3HO/dXMrgbmOuee83mshO/VzM4Cfu6c+0mS/dwD3OWc+8DPcSX/KMFLNql2zu3T+MDM
egEfmdks59xHmQrKOTcoFs+2QDT23LVNNjkSmJ/iblt8r7Gn/NygcjRwd4rHlTyiBC9Zyzm31Mz+
A5Sb2b7AuUAx8K1z7sexkfNpQB2wGBjunFsRe/kpZjYK6Aw87Jy7CcDMRgMnAkWxfV3unHs29pp+
ZjYD6A58AFzgnFtrZp8CP2sam5ndD3wErAP2A8aZWSdgEnCAc+6/se1ewfs0kXB03/S9NjvOdsBd
wI6xpx5wzv3JzG4AegF/M7NfO+dmIdKMavCStczsYGAn4N3YU/2A/rHkfjZwLLCvc24vvBH0A01e
XgIcABwMnGFmx5rZDnij7f6x14wBrm/ymp2Ak51ze+D9boxJEmLUOTcFmI33h+JhYBrwm1j8O+El
7Odb8V4b/Q14LRbTocCZZnaqc24MsBT4pZK7tEQjeMkmXcxsDl5NOgxU4iWwJWYGMM85tza27XHA
/c65mtjjicBoM2v8mb7XORcFVpvZk8DRzrmXzWwIXsLfGTgI6Nrk+E87576JfX0/cCswymfsjXX0
u4AZsU8Kv2kSR6rvFTPrAvwIrxSDc+47M5sGDAQeb3Zckc0owUs22aQuHceaJl83//TZAe/nuTHh
NTT5XgioM7O9gWeB24CXgRnAlCbbbfYa/6F7nHP/MbN5wEnAL/E+RcST7L1C/E/YBUBhqnFJflKJ
RrJJKqPRl4GzY6NcgIuBGc65xqT8awAz6w4MBv4P6A/Mcs5NAN4ETsb7w9Dop2a2tZl1AM4DXvQZ
Sz2bJt0pwDhgpnNuWQuvSfpenXNrgJnAhbH3snXsfb3SwnFFNqEEL9kkldamfwFeBd4zs/nAXsAZ
TfazyszeB94CJjrn3gQeAUpj288GvgN6mFlx7HULgBeAD4Eq4BafcT0HjDezM2OPn8cr/SSa4eL3
vZ4BHBX7VDATeMI592Dse88Aj5nZUT73JXkmpHbBIm3LzA4Bpjrnds90LJLfAq3Bm1lHvItVfYFV
wIXOuY+DPKZIJsUugg4AzkyyqUjggr7I+htgtXPuYDMrBybjzX4QyUnOuSGZjkGkUdA1+H54F7dw
zi0Gfhjw8UREJCboBD8XaLzN+yCgl5lp3q6ISBoEXaK5D/ihmb0JvA2838JNHwDU1zdEw+EOLX1b
RCQrhMPQ0BD/+bqU755oE3EHzkEn+P3xbrP+XayXyPcTbVxVVR1wOMmVlpZQWbk602FkBZ2LjXQu
Nsqnc1FREWbChI4sXlxAeXmEESNqOfnkesrLu7Bw4eaD0fLyBior05/HSktL4j4fdIL/DzDWzK7C
m1d8bsDHExFpExUVYYYN67zh8cKFHWKP1zFiRO0m32t0ySW1aYwwuUATvHNuJbE+GiIi7cmECR3j
Pj9xYkemT68G1jF5cmcWLIhSXh7hkku80X02US8aEclrTcsw224bJRSCZctCcWvsAIsXe3NTTj65
nvPOg8rKNfE3zAJK8CKSt5qXYZYuTT7Jr7w8EmRIbUoJXkTySuOIfdGi1s0Sz7Y6eyJK8CKSN5qP
2P2JEg6TtXX2RJTgRSRvtHThNJF+/SKxi6rtj9oFi0jeaLxAmor2VJJpTgleRPJGz56J26OHw1F6
944QDkfp16+BqVPXtauSTHMq0YhIXqioCLNkSeIx7eTJNe06oTenBC8iOWv06CKmTSukPmHOjtKv
X/u7gOqHEryI5KTRo4u4997kF1XDYdrtRdRkVIMXkZz00EP+1iNvTzcupUoJXkRyRkVFmL32Kqas
rCvr1/t7TXueJZOMSjQikhNacxPTdttFcq7u3pRG8CKSE1pzE9M11/gc5rdTSvAikhP83cQUpaAg
N+a4+6ESjYi0exUV/lJZe2470BpK8CLSrqVSe8/lC6rxqEQjIu1a8tq7134gH0oyzWkELyLtWrLa
ezgMc+asTVM02UUjeBFpt0aPLmpxab1GuXwjUzIawYtIu+S3FUG+1d2bUoIXkXYpeSuCKFOn5lZ3
yFSpRCMi7VKyVgT9+uX2Xap+KMGLSLvjzXsPJdwmn0szjQIt0ZhZGHgA2BGoB37jnFsc5DFFJHcN
HtyZN97okHS7I46oz/vROwQ/gj8e6OCc+xEwFrgp4OOJSI7yknvjyL2l0XuUoUNreeyxdWmMLHsF
neAXA2EzCwFbA/rMJCKtMn168pF7KAQ33ZTbDcRSEYpGEy9CuyXMrDfwLNAV2AYY5Jyb2dL29fUN
0XA4+f9EEck/ocQl9w0CTGnZLO7ZCXqa5KXAS865q8xsO+ANM9vNORd3JF9VlfkmQKWlJVRWrs50
GFlB52IjnYuNMnEuRo8uApLPeS8qilJZuSb4gGKy5eeitLQk7vNBJ/hvgLrY19/GjqchuoikxO/y
e2eeWZd8ozwSdA1+ArCvmb0JvAqMcs7p6oeI+FJREWb77YsTzHmP0tjjfejQWtXfmwl0BO+cWwsM
DvIYIpKb/LYBXrEifSWZ9kY3OolIVrr++qJMh9DuKcGLSFZassTntBlpkRK8iLRb222Xn3Mi/VKC
F5GsVOAjO11zjS6qJqIELyJZKdLiOh1RioqiebkEX6rUD15EskafPsWsXZu89v7FF5o544cSvIhk
BW++e/KiQo8eqrv7pRKNiGRcRUXYV3IH6Jx8arzEKMGLSMZNmJC8z0yj5cs1fdIvJXgRybhFi/yn
ovLyFq++SjNK8CKSURUVYaJR/6PyrFqKr6YG6rK3wZkSvIhkVOKWBNEN/8LhLJoaWV9P53umQGkp
JZddnOloWqRZNCKSUclaEmRbM7HwB+/TdeSlFM6bC927s/4nJ2Y6pBYpwYuI+BD6bhXFN4+l031/
JhSNUnPq6XSaNJFaOmU6tBYpwYtI2u29d3GTkXvLI/is6DUTjVL09wqKx1xJh+XLqN/5B6y59Xbq
Du1Pp9ISyIIVnVqiBC8iaeUldz+X/6J88MHawONJpODTTygZdTkdX3+VaFERa68cQ/WFl0BR+2hl
rAQvImnVLtoA19bSZfJEutw+jlBNDbUDjmD1LbcR6btTpiNLiRK8iGSloUMzM/2w8J236Pr7Swkv
dkRKy1g9cQrrT/oZhNrBH6ZmlOBFJG0qKsIkqrlvFE37+qqhlSvp+oer6PTYw0RDIdadPZS1o68h
unW3tMbRlpTgRSRt/LYkKCpK48XVSIROj/6N4uvGUFBVRd1ue7Bm/ATq99kvfTEERAleRNJm4cJE
F1e9pF5UFOWLL9JzcbXDooWUjBxB4bv/IlLclTVjb2bducMgnBupMTfehYhkve23LyZReSYUguXL
03RTU3U1xbfdSucpdxCqr2f9CT9lzY23EOm1XXqOnyZK8CISuNGji5K2Az788Ia0xNLx1ZfpeuXl
dPj8fzRsvwNrbh5H7TED03LsdFOCF5HAPfRQYZItojz22LpAYyj4aildr7qCouefJRoOU33Rpaz9
3e+huDjQ42ZSoAnezM4ChuAV1zoDewI9nXPfBXlcEcku6zO5NnZ9PZ3vu4cuN99Awdo11O1/IKvH
TaCh364ZDCo9Ak3wzrkHgAcAzGwScK+Su4g0169fMD3emzYGi3Trxurb7qTml2dCQX400k1LicbM
9gP6OeeGp+N4ItJ+hEIRpk+vbtt9xmkMtuYPNxL93vfa9DjZLhSNBj/f1MyeAu5wzs1ItF19fUM0
HO4QeDwiEqw994R58/xt26YpKBqFJ56AESPgq6/ADO66C444og0PkpXiTk8KPMGb2dbAW8653ZNt
W1m5OuOt40pLS6jM4u5w6aRzsZHOxUbJzsXhh3dhwQK/A7Vom/V7b94YrPrSkYE3BsuWn4vS0pK4
CT4dJZr+wGtpOI6IZIEFC9Jc386RxmBBSEeCN+CTNBxHRNqZLb3WmUuNwYIQeIJ3zo0P+hgikh32
3jvx3arNnXNO6zpG5mJjsCDoRicRaROHH97F50IejSKpd4zM4cZgQVCCF5E2kbz2Ht3k6xUrUmso
luuNwYKgMyMiW6yszM/t/qkndSBvGoMFQQleRLaIl9yTj95bk9zzqTFYEJTgRaTVevb0e1E1tVtc
8rExWBCU4EWkVXr2LCYS8XNRNYXRex43BgtC0gRvZj2AfZxzr5rZKGAf4Frn3ILAoxORrBWJ+JsO
6fdG0nxvDBYEP2fuEWAXMzsK+AXwd+DuQKMSkZxx5pmJ57qHvltF11GX0+24IymcN5eaU0/nm3fm
UHPGWUruW8jP2evunJsEnAhMc849BHQJNiwRyWbehdVkI/goQ4fWtjzXPRql6Nmn6f6j/en8l3to
2Glnvn36eVZPmpp3XR+D4qcGX2Bm+wInAQPMbC+frxORnJUsuUcS1t2bNwZbe+WYwBuD5SM/ifoK
YBww3jn3iZnNBC4NNiwRyVZem5dECT7BRVU1BkurpAneOfeamb0L9DWzEPBj51wr7lYQkfauoqL1
H97VGCz9ktbgzexIYC7wLNAT+NTMjgk6MBHJLmbFDBvWKel2odCmc95DK1dSctH5dDvpeDr8ZzHr
zh7KN+/MZv3JP1dyD5ifi6w3A4cC3zrnvgIOxyvZiEieMCumqqoAPxdWly+PfcCPROj08EP0OGQf
Oj32MHW77cG3//caa265TV0f08RPgi9wzi1rfKD57yL5p6rK30i7e3dv9N5h0UK6nTiQkhEXQm0d
a8bezLevTFfXxzTzU1D70swGAVEz6wZcCHwebFgiki38TYkEiOA+qKT4BjUGyxZ+EvwwYCKwPd7K
TK8B5wUZlIhkE3+9Zr59+Gm69ldjsGziZxbNCuD0NMQiIlli01F74gTfiyVM4BK2/uVTagyWZfz0
ovmUOK3gnHN9A4lIRDLKX/tf6EA9FzKJG7iaEtQYLBv5KdEc3uTrQuBkQLebieSs5CWZ/ZjF3ZzP
vszxGoNdo8Zg2chPieZ/zZ4aZ2azgRuCCUlEMiXZBdWtWMUNjOFCJlNAlJpTT2fNH25U75gs5adE
07/JwxCwK9A5sIhEJCMSJ/cov+AJJjCCXnzFIozhBZN5ZNIB6QxRUuSnRHNdk6+jwNfAWcGEIyKZ
kKju3pePmcRwBvISNRQxhrGM4zK+XFaf3iAlZX5KNEdsyQHM7Ergp3j1+ynOufu3ZH8iEoTNR+6F
1DKScYzhBjpTwysczQVM5mN+wIoVqzMQo6SqxQRvZm+QYCFF59yRyXZuZgOAg51zh5hZMXBZq6IU
kcDEK830ZwZ38Vv6sZBlbMvZ3M8zHX/BF19WU1oKlZWZiVVSk2gE/4c22P+xwEdm9gxQAoxsg32K
SBuIl9i34WvGczlDeIAIISZzAVdxI6vYmhVfrslMoNJqLSZ459yMxq/NbG+gK95PQwegDzCjhZc2
9T1gB2AQ0Bdvub9dtiBeEWkDzWvuISIMYRrjGMk2fMMH7MUwpjKLxouokYzEKVvGzyyaB4BDgB7A
QmAv4G3gPh/7XwksdM7VA4vNrMbMvuec+zrext27dyEc7uA7+KCUlpZkOoSsoXOxUa6ci+Ydevsx
n7s5n8N4i9V0ZQS3M4nhNDRJD9FoAd6HcE+unIu2kM3nws8smv5AOXAncAfeKH6Sz/2/BVwM3G5m
vfDWcl3Z0sZVVdU+dxuc0tISKit1AQl0LprKlXPRdOTemWquZiyXM55C6nmKU7iEiSyhd5NXeEvv
Na2558q5aAvZci5a+iPj57azpc65OrzR+x7Oufk0/VOegHPuBeADM3sPb8GQC5xzLV64FZFglJUV
U1bWWGWFgbzIfHZlFH9kCdsxiOf4OU81S+4Jlt6TdsHPCH6JmY0CXgVuNTPw6vG+OOeubGVsItIG
mo7avcZgI/gFT1JHmD9yBWO5mmriNQbTWKy98zOCPxf41Dk3C3gar7PkbwONSkTaUIgO1HMxE1nE
LvyCJ3mbQ9iHOYzij82SezT2L6LRew5INA9+PPAX59xC4FEA59ydeLV4EWkHysqK2Y/ZGxqDfUN3
hvJn7uMcopuN75TUc02iEs13wLNmthJvxswjzjlNhBVpJ3Yuq+cOLtnQGOwBfs3ljOdrSuNsrXp7
Lko0D/564HozOxj4NXCNmb2GN6r/Z7oCFBF/Nt645DUGW8ilGxqD/Za7mE6iriOqt+eipDV459y/
nHO/xbtR6VngIjNbFHhkIuJb44XUvnzCi5zA45xGD75hDGPZkw9bSO6qt+c6P7NoGh0CDAT2wZtR
IyIZ1jhqL6QuTmOwKXzMzi2+NhyOsnSpEnsuS5jgYy0KfgWcCjhgGnCxc64m+NBEJJHGUXu8xmCP
MZjEKzNFlNzzQKJZNAvxluabBhwWZ2UnEcmgbVjJeEbGaQzWLckrdUE1XyQawV/onHs9bZGIiD+R
CFf0fALHFS00BktGF1TzRaJZNEruIlmisdbuNQb7LfclaAy2qebJXKP3fJLKRVYRyYCysmI6U+Oj
MVhzmh2T75TgRbJYWVkxA3mJyVxIHz7jM77PcCbxAoMSvMqb/qjkLoEu2ScirVNWVkwvlvI452xo
DHYLv+d6rmmhMVhTSu7i8bNk32+AdcADQD1es7HOwYYlkr96lnXiYu7kBsZQwhre5hDO524+Yncf
r1Zyl42SLtlnZuOdc/s3+dZMM5sdeGQieWhg2ULe47c+GoO1RDNkZCM/PzWdzay88YGZ7Q4UBheS
SP4JfbeKR8tG8R4HsS9zeIBfYzj+wtAEyT3a7J8uqsqm/Fxk/R0w3cyW4C24XYpXphGRVtjYFAwa
G4NN4FIu8t0YDJTMxY+kCd4594qZ7QjsjjdMmBdbRFtEUtR0daW+fMwkhjOQl6ihiDGMZRwjqaUo
yV6U3MWfpCUaM+sOTAbGAf8D7ok9JyIpaEzuhdQymhv5iN0YyEu8wtHsxkfcyJgkyV1lGEmNnxLN
n4FXgAOA1cBXwF+BEwKMSyRnbCzJhFrZGAyU2KU1/Fxk7eOcuweIOOdqnXNXQcLb50QEL7GXlXUF
CtiGldzPEGZwOLuwiMlcwC4s4jFOI3ly19RHaR0/I/h6M9ua2PwrM/sBEAk0KpF2rrEcEyLCEO5n
HCNb2RgMNPVRWstPgr8GmA7sYGbPAAcD5wQZlEh71pjcvcZg53OYr8ZgLSVxjd6l9fwk+K+Ao4ED
8aZJDnPOLQ80KpF2qnWNwVRfl2D4SfCPOed+CLzQmgOY2fvAqtjDT51z57ZmPyLZrnWNwZTcJTh+
EvwCM7sGeBevJw0Azrk3k73QzIpi26oxmeSUTW9Wgl4sSbExmDo+SvD8JPgewBGxf42igJ+kvSdQ
bGYv45V3rnLOvZtylCJZpOnNSgU0MJxJKTQGU2KX9PFzJ2uye6YTqQbGOef+Ept9839mVu6c0ywc
aXeazmcH2JfZTGVYCo3BVI6R9ApFo4mnYJnZ94F7gR2Bw4CHgXOcc58l27mZdQQKnHM1scfvAqc4
55bE276+viEaDndIJX6RtAg1maq+Fau4gTFcyGQKiPIAv+ZyxvM1pQn3keRXTWRLxL2Zwk+JZipe
m4JbgOXAI8CDQH8frz0Hr4fNhWbWCyjBm5UTV1VVtY9dBqu0tITKytWZDiMr6Fx4NpZkGhuDjaBX
KxqDVVamIdg00M/FRtlyLkpLS+I+7+dO1u85514BcM5FnXN/Brbyedy/AFub2T/x/jCco/KMtCeN
yb0vH/Mix/M4g+nBN4xhLHvyobo+SlbzM4JfZ2a92Xgn66HAej87d87VAWe0PjyRzGistxdSy0jG
M4Yb6EwNr3A0FzCFj9k5zqua12B0MVUyy28/+OeBncxsLt6smlMDjUokQ1rfGEwjdck+SUs0zrlZ
wP7AQcCvgZ2dczODDkwk3RrLMak1BlMLX8leLY7gzex+WmiQYWY459SPRnJGWVkxIWAI96XQGEyJ
XbJbohH8dGAG3syXXsDreH3huyd5nUi7UlZWTD8WMIMB3Me5dKSWEdzO/sxKkNxVX5fs1+II3jn3
AICZXQAc3Dj7xcweB1SikZzw/bIQN3FVCo3BGmlSu2Q/PxdZt8a7sPp17PG2QNfAIhJJk7PKZjCf
i1JoDBbd8F+N3qU98JPgbwTmmdnbeP1kDgQuCjQqkTbWtDlYL5YwgUt5MaXGYCFWrFiTrnBF2oSf
BP8hsC9wCN5P+vnOuRWBRiXSRppOe0y9MRh4o/U1sTsW0xS0SBtJpR/8U0EHI9KWmnZ9TL0xWCPV
2qX9CrQfvEi6Ne/THq8x2EjGUUlZkj2pra+0f0H3gxdJm6Yj9tY3BvNeq3q75IKg+8GLpEXTkXtf
PmYSwxnIS9RQxBjGMo6R1FLkc28qy0huSJjgzaw/cDVeqwKAWcD1zrl/Bh2YiF+NI3evMdg4n43B
IH4iV1lGckeiVgVHAg8BNwAjgI54M2keNbNfOeempyVCkTia19pTawym+rrkh0Qj+GuBE5xzc5s8
94GZzQRux9+CHyJtrmmtfRu+ZjyXM4QHiBBiMhdwFTeyim4J9qDkLvkhUYLfqllyB8A5976Z9Qgw
JpFNNB+tQ4gQEYYwzWdjsOgmXyu5S75INAm4q5lt9gcg9pyf2TciW2zjaD204V8/5reiMdia2D8l
d8kfiRL8y3jrsG5gZh3wyjMvBBmUSFlZMWVlXWk6cu9MNTcxirnsxWG8xVOcwg9ZyERG0BB3zKFe
7ZLfEo3ErwCeM7P/ArNj2+4HzAdOSUNskqc2nc/uGciLTObCFBqDgcoxku8StQteCxxpZgPwpklG
gQnOubfSFZzkh3g19kZeY7AR/MJXYzDV2kWa8nOj0wy8hT9E2ly80TrQisZgKsWINKeLpZIxLSV3
f43BNFoXSUYJXtJq83LMRqk1BlNSF0lGCV7Somlf9s35bQymFZVEUhF4gjezMrxZOEc55xYHfTzJ
Pi2VYiCVxmCqsYukKtAEH7sp6m6gOsjjSHZKVI5J3hhMNXaRLRX0CH48cBcwKuDjSJZJNGpP3hhM
/dhF2kKy9cpazcyGACucc/+gpWGc5KReveIn9234mvsZwgwOZxcWMZkL2IVFPMZpbPojon7sIm0h
FI0G88tkZjOASOzhXoADfppowe76+oZoONwhkHikbYVS+JOdWmMwCOhHUiSXxf2NDCzBN2VmbwDD
kl1kraxcnfFf7dLSEiorV2c6jKzQ0rlIVH5prh/zuZvzOYy3WE1XrmYskxge6x3Tfvqy6+diI52L
jbLlXJSWlsRN8OmaJpnxxC1to08ff8m9M9VczVguZzyF1PMUp3AJE1lC7yZbtY/kLtJepSXBO+e0
QHc7lWgmTEsSNwbTXHaRdNGNTtIir87u/zp88sZgmh0jkk5K8LLF/DcGU6VOJJ2U4CUurzST3OaN
we5p0hhMNyuJZJISfJ4bPLgzb7yR+tTUeI3BTph/LTeXlnKzblwWyQpK8HkslemOG7XUGGwAK0o1
QhfJJoHdySrZrTXJvQ+f8CLH8ziD6cE3XM117MlcL7mr/CKSdZTg81Cqyb2QWkZxE/PZlYG8xGsF
R7F25kwuXnEpX66oU3IXyVIq0eSw0aOLuPfewjjf8T+vffPGYPdx51cnEEmlV4GIZIRG8DnKS+4d
2bjIRtN/ybXUGOz54sGpNaIRkYzRCD4HtTxyT85rDHY/4/h9k8ZgdzOLAygujvLppyrHiLQXSvA5
ZuPIPXVNG4NFirvCDbfTe/BZvBAOA7oDVaS9UYkmx7Rm5N6Zam5iFHPZi8N4i/Un/JSqt2fBiBEQ
1hhApL3Sb2871tqblJpq2hisYfsdWHXzOGqPGdhGEYpIJinBt0N9+hSzdq3/C6ab8toHeI3BLt3Q
GKx6+AjWXnYFFPtrUSAi2U8JPsv4G5W3fhbL9r3qWXDBbXS5+QYK1q6hbv8DWT1uAg39dm31PkUk
OynBZxGzYqqqgrosEmVg6Sye/d4wCsfMJdKtG6tvu5OaX54JBboUI5KL9JudJQYP7hxYct+KVdxX
fBEvfH0QhfPmUnPq6Xzz9vvUnHGWkrtIDtMIPkts6cXS+Jo0Blv7FfU7/4A1t95O3aH9AziWiGQb
Jfg0Gj26iGnTCqmvj/fdtro71LuI2odPmMxwBvIS9eEi1l52FdXDR0BRURsdR0SynRJ8wCoqwlx3
XRFLl7Z21osfXlLv3j2K+3cVXabcQZfbbiVUU0PtgCNYfcttRPruFNCxRSRbKcEHqKIizLBhndtg
Ty0vdde0fUDhO2/R9chLCS92RErLWD1xCutP+pl6x4jkKSX4AE2Y0LqWARtFmTq1hpNPjlvT2SC0
ciVd/3AVnR57mGgoxLqzh7J29DVEt+62hccXkfZMCT4gFRVhFi7cshkq220XTZzcIxE6Pfo3iq8b
Q0FVFXW77cGa8ROo32e/LTquiOQGJfgAtFVp5ppr1rf4vQ6LFlIycgSF7/6LSHFX1oy9mXXnDlPv
GBHZINBsYGYFwJ8BAyLA+c65BUEeMxv4L83Er60XF8Ntt7VQmqmupvi2W+k85Q5C9fWsP+GnrLnx
FiK9tmt9wCKSk4Ie7v0EiDrnDjWzAcBNwEkBHzPtKirCTJjQkUWLCujYEda3PPAGovTuHeXqq9cn
ra031/HVl+l65eV0+Px/NGy/A2vUGExEEgg0wTvnnjWz52IPdwSqgjxeJjQvxyRO7tCvX4Tp06tT
OkbBV0sx9ecDAAAMmElEQVTpOuZKip57hmhYjcFExJ/AC7bOuYiZTcMbuf886OOlW6ozZS65pNb/
xg0NdP7LVDUGE5FWCUWjLc+xbktmVga8B/zQObcu3jb19Q3RcDiIW/aD8eijcPrp/rd/5BE47TSf
G8+eDcOGwZw50L073HornHOOeseISDxxb3YJ+iLrGUBv59wfgRqgAe9ia1xVVamVLoJQWlpCZeXq
pNulOlOmX78GfvzjaiorE28X+m4VxTePpdN9fyYUjVJz6umsufYGoqWlsDK966H6PRf5QOdiI52L
jbLlXJSWlsR9PugSzdPA/WY2I3asS5xzSarU7UObl2aiUYr+XkHxmCvpsHyZGoOJyBYL+iJrNTA4
yGNkyuLFLZVKooRC0LEj1NXBLrtEuOSS2oQzZgo++5SSKy+j4+uvEi0qYu0VagwmIltOd8W0Unl5
hIULN79ekNIsmdpaNQYTkcDoil0rjRgRv+Tid5ZM4Ttv0f3IH1F80/VES7biu6n3serxZ5TcRaTN
aATfSl7JZR0TJ3Zk8eICysuTl2Ig1hjsujF0evRvagwmIoFSgt8CJ59c7/9uVDUGE5E0U4JPAzUG
E5FMUIYJkhqDiUgGKcEHRI3BRCTTlODbmBqDSa5ZtGgB69atY8GCj/jVr87KdDiSAk2TbCsNDXS+
ZwrdD9mPoueeoW7/A6l69Z+sveZ6JXdpFx566H5OO+1knn/+GR5//GHGj7+Z9etrWLRoIbvuujur
Vn3LunVx20glNW3avbz11gwefPC+uN+PRCI8+OB9/OMfL/H3v1cA8MUXn/P0009QX79xIkNdXR0v
vfQCM2a8zk03XUdNTQ0AH3/8XwCWLPmS2toUGvrlOCX4NhCeO4duxx5B1zFXQmGY1bfdybfPvayu
j9Ku7LJLP/r3P4JBg07i1FN/ycqVK5k16z1OOulnhMNhIpEonTunvlLZ7NnvAXDooQOor6/nww/n
brbNq6++zLbb9uToo4/jyy+/YPnyZaxYsZw777yNQYOO4sQTj+X3vx/BwoXzmTXrXQYMOJLq6rW8
//4sAC66aBgnnngcb745nY4dt3Qt5NyhEs0WSNgYTKSdWbDgI/bee18Aqqq+YfXq79hjjz0BeOON
1zjzzCGbjKb9+ve/P6S8fBcAysuNOXNmseeee22yzbx5H3LkkUcB0LPn/+PDDz+guLgrr732NgUF
BXz00Ty6detO797b07fvzgB8++23/PCH/QAYMWIkxxxzXOveeA5Tgm8NNQaTHLRo0UJ23LEvFRVP
snz5Mv70pzsoKurEK6+8xJw5s5g9+z1GjhyV8n6rqr7ZMPLv3LkLK1eu3GybLl260NDQAEA0GuXr
rys5JjYpobq6mqVLl7LbbnsAUF9fz6OP/pXjj/8JPXpsA4BzCygp6cpnn33G6aef0ar3n4uU4FOk
xmCSq1av/o4BA44AYPjw8ygs9EodxxxzXNzR8aeffsKsWe8SCm3einzgwEF07doVgEgkSkFsHYNI
pIEOHTavDB977PF8+OEH7L//gXz88X/Yfvvvb/je448/zODBv9rwuFu3bpx22hmMGfN7tttue/bc
cy+GD7+UUCjE0qVLee+9mRxwwEFbcCZyhxK8X2oMJjls2bJlG0bDAMuXL6Ourpaiok4tvqZPn770
6dM36b579Oix4eLs2rVr6dat+2bb7LTTzqxa9S3/+tfblJaW0bfJ79WcObMZMmToZq/ZYYcdefXV
l1my5AsikQYGDTqJoqIi/vvf/yjBxyjB+1D4zlt0/f2lhBc7IqVlrJ44hfUn/QzijFxE2qMFCz5i
551/AHgzVVau/Jqiok5UVX1D9+494r6mcQTfXCgU4rjjTqCkxFuEYo899mLRogUcfPCPWLBgPvvt
dwAAy5Z9Rc+e/w+A996byYoVyxk06ETeffdf7Lvv/gB8/vn/qKur27Dvhx6aRl1dLeeccx5VVd+w
0047s/XW3egXm9CwbNlXG64jiBL8BhUVYSZM6MjixVBe3oURI2o5pf/yDY3BIoSYEvotD3Qfyx6z
Snh7QocNTcZGjEjeZEwkW82dO4dnn32K0tIyqqqq6N69O4ccchivv/4qO+64Y4sJ3u8Ift9992fm
zHd4441XCYVCHHDAQaxevZrrrruKu+7ypk327r09n332KRUVT3LkkUcRjrXxqKuro6xs2w37Ouqo
Y/joo3m88MLfKSoq4mc/85abePLJxyguLqa0tGzDHwdJ45qsflRWrs5IMM2X3wsRYQjTmFI8kk5r
v+ED9mIYU5nFAS3uY+rUdTmX5LNlObJsoHOxkc7FRtlyLkpLS+KWEzQPnk2X3+vHfGYwgPs4l4Z1
tdy87Z/Yn1kJkzvAxImaeysi2UUlGrzl90JEuIExjGQchdTzFKdwWWgCX37dm4b4C5Zvtg8RkWyi
rIS3/N6BvMtobmYJ2zGI5/g5T1FsvSgvj/jeh4hINlGCx1t+byYH0Z8Z7Mp8XmAQ4C2/19LSfM35
XapPRCRdVKKhcfm9GiZO/BG1izvQr7yh2fJ7my7Nd8ghDbzzToeUluoTEUk3zaJpJluuimcDnYuN
dC420rnYKFvOhWbRiIjkmcBKNGYWBu4DdgQ6Ajc6554L6ngiIrKpIEfwZwBfO+f6AwOBSQEeS0RE
mgnyIuvjwBOxrwuAugTbiohIGwsswTvnqgHMrAQv0V8V1LFERGRzgc6iMbPtgaeBSc65BwI7kIiI
bCawBG9m2wJvABc6594I5CAiItKiIBP8BOBUYBEQAqLAQOfc+kAOKCIim8iqG51ERKTt6EYnEZEc
pQQvIpKjlOBFRHKUukm2wMx2AWYCZc65vOwFbGZbAX8FtgIKgcucczMzG1V6mVkImALsCdQAQ51z
n2Q2qsxQ+5FNmVkZMBs4yjm3ONPxxKMRfByxm7PG4/1C57PfAa865w4HzgYmZzacjDgJKHLOHQKM
Am7LcDyZpPYjMbE/dncD1ZmOJREl+Pjuwftlzur/eWlwGzA19nUhsC6DsWTKocBLAM65d4H9MhtO
Rj0OXB37Ot/bj4wH7gKWZjqQRPK6RGNm5wCX4s3Rb/Q58Ihz7t+xj+d5odm5aLxv4Wzn3Ptm1hN4
CLg4gyFmylbAqiaP682swDmXd2s0qv2Ix8yGACucc/8ws9GZjicRzYNvxswWA1/iJbmDgHdjJYq8
ZGa7Aw/j1d9fyXQ86WZmfwL+5Zx7Mvb4c+fcDhkOK2PUfgTMbAbQ+Ad+L8ABP3XOrchcVPHl9Qg+
HudceePXZvYpcHQGw8koM+uH97H8VOfcvzMdT4a8DQwCnjSzg4B8PQ+N7UdeJs/bjzjnBjR+bWZv
AMOyMbmDEnwyjeWKfHUTUARMjJWrvnXOnZzhmNKtAjjazN6OPT47k8Fk2CigG3C1mV2D2o/ApuXd
rKMSjYhIjtIsGhGRHKUELyKSo5TgRURylBK8iEiOUoIXEclRSvAiIjlKCV5EJEfpRifJKWbWBRgL
nIDXHG0V8Afn3PQ2PMaOwBjn3FAz2xfvTsbzYnc1Xuuce7OtjiWyJTSCl1zzDN7AZVfn3N7ACOCv
ZvajNjzGjkBfAOfc+86589pw3yJtRiN4yRmxJF6Od/t8A4Bzbq6Z3QBca2aFxEbYZvZ9YLpzro+Z
7QbcARQDZcCfnHOTzOxaYDvgB8AOwL3OuZuBiUAfM7sTeBLvE8IRzWK5AjgVbxD1snPuylgXxkeA
bWObXeecez7AUyJ5TiN4ySUHAB80Jvcm3gQOZPO+IY2PzwXGOucOBI7E68HTaHfgKLzOoqNiq1xd
DMx2zl3UbD8AmNmxwL54veP3AXqb2a+Ak4FPnXP7A2cCh7X2jYr4oRG85IPOQIcE378MOM7MrgT2
wBvJN3oj9gej0sxWAlv7ON5ReH9s3sdrVtcJ+B/ecnc3mllv4AW8awUigdEIXnLJLGBvM+sAYGbf
iz1/UOx7TbuDFjZ53RN4S/PNB5ov4NB82UY/3UU7ABOcc/vErgMciLd+6cfALnjr3B4Wi0kkMErw
kjOcc28Bi4A/xdbMHBJr8zsGuB74Gtg1tnnTtsdHAdfEFpA+HDYstt2SehJ/+n0dONPMimNxPAv8
3MwuBK53zj0FXAiUxko+IoFQgpdcc1LsvwuAs4AG4L/AcXjraF5oZrPx+tw3+gPwduz5o4FPgT5x
9t1Ya18IdDOz5isaRQFiF06fAt4F5gFznHMPAg8CZmbzgOl4F3y/a/U7FUlC/eAlL5jZ8c65FzMd
h0g6KcGLiOQolWhERHKUEryISI5SghcRyVFK8CIiOUoJXkQkRynBi4jkqP8PHFPqweqDEDoAAAAA
SUVORK5CYII=
"
>
</div>

</div>

</div>
</div>

</div>
<div class="cell border-box-sizing text_cell rendered">
<div class="prompt input_prompt">
</div>
<div class="inner_cell">
<div class="text_cell_render border-box-sizing rendered_html">
<p>We see that after transformation, the distribution for <code>price</code> resembles that of a normal distribution. We see from the Q-Q plots that log-transforming the response variable yields a distribution that more closely resembles that of a normal distribution. This normality validation is important in order to fit the assumptions of linear regression models.</p>

</div>
</div>
</div>
<div class="cell border-box-sizing code_cell rendered">
<div class="input">
<div class="prompt input_prompt">In&nbsp;[23]:</div>
<div class="inner_cell">
    <div class="input_area">
<div class=" highlight hl-ipython2"><pre><span></span><span class="c1"># read to csv</span>
<span class="n">df</span><span class="o">.</span><span class="n">to_csv</span><span class="p">(</span><span class="s1">&#39;../datasets/listings_clean.csv&#39;</span><span class="p">,</span> <span class="n">index</span><span class="o">=</span><span class="bp">False</span><span class="p">)</span>
</pre></div>

</div>
</div>
</div>

</div>
    </div>
  </div>
</body>
</html>
